Как получить значение текстового поля с помощью jQuery?

486

Я могу получить элемент, как это, $("#txtEmail")но я не уверен, как получить фактическое значение.

Михей
источник
22
ты пробовал $ ("txtEmail"). val ()
Perpetualcoder
2
хе-хе ... проблема была в том, что я забыл сослаться на свою функцию в событии click =)
Михей

Ответы:

765

Есть .val()метод:

Если у вас есть вход с идентификатором, txtEmailвы можете использовать следующий код для доступа к значению текстового поля:

$("#txtEmail").val()

Вы также можете использовать val(string)метод для установки этого значения:

$("#txtEmail").val("something")
neilprosser
источник
2
Почему «.value ()» не работает в jQuery? Я бы не стал искать в Google, если бы он это делал, потому что это то, что я пытался интуитивно. Почему решили сократить его на два символа ...
Майк де Клерк
var user_email = $("#txtEmail").val()
Нипек,
74

Используйте метод .val ().

Также я думаю, что вы хотели использовать в $("#txtEmail")качестве $("txtEmail")возвращаемых элементов типа, <txtEmail>которого у вас, вероятно, нет.

Смотрите здесь в документации по jQuery .

Также jQuery val () метод .

Спенсер Рупорт
источник
23

Возможный дубликат:

Просто дополнительная информация, которая заняла у меня много времени, чтобы найти. Что делать, если вы использовали имя поля, а не идентификатор для идентификации поля формы. Вы делаете это так:

Для радио кнопки:

 var inp= $('input:radio[name=PatientPreviouslyReceivedDrug]:checked').val();

Для текстового поля:

 var txt=$('input:text[name=DrugDurationLength]').val();
Юзаф Абдулла
источник
Будьте осторожны при публикации копируй и вставляй шаблонные / дословные ответы на несколько вопросов, они, как правило, помечаются сообществом как «спам». Если вы делаете это, то обычно это означает, что вопросы являются дубликатами, поэтому пометьте их как таковые: stackoverflow.com/questions/1320088
Kev
1
@Kev: я не знал о такой маркировке. Тем не менее, я не уверен, что это был дубликат, когда я опубликовал это решение. Я не мог найти один в ТАК так отправил. Но в будущем я буду иметь в виду, и спасибо, что сообщили.
Юзаф Абдулла
1
«Input: text» помог, потому что у меня было 2 элемента управления с одинаковым именем. : <(Обратите внимание на мой код, только что унаследованный им)
granadaCoder
11

Заметив ваш комментарий об использовании его для проверки электронной почты и необходимости плагина, плагин проверки может вам помочь, он находится по адресу http://bassistance.de/jquery-plugins/jquery-plugin-validation/ , он поставляется с электронной почтой. править также.

Wardy
источник
6

Есть .val();метод, который вы можете использовать.

Так что в вашей ситуации вы хотели бы использовать $("#txtEmail").val();. Также убедитесь, что вы добавили свойство id в свой HTML-код!

scapegoat17
источник
5

Используйте .val()метод, чтобы получить фактическое значение нужного вам элемента.

PUBG
источник
4

Вы можете получить доступ к значению элемента управления Texbox либо по его идентификатору, либо по имени класса.

Вот пример кода:

<input type="text" id="txtEmail" class="textbox" value="1">

$(document).ready(function(){
   alert($("#txtEmail").val());
   alert($(".textbox").val());//Not recommended 
});

Использование имени класса для получения любого значения элемента управления в текстовом поле может вернуть другое или неправильное значение, поскольку то же имя класса также может быть определено для любого другого элемента управления. Таким образом, получение значения определенного текстового поля может быть получено по его идентификатору.

Акшай Чавла
источник
2

Используя

$("#txtEmail").val()

вы получаете фактическую стоимость элемента

Милан Мод
источник