Найти поле ввода определенного типа, а также его значение

#javascript #jquery

#javascript #jquery

Вопрос:

Пожалуйста, взгляните на эту скрипку.

Я могу использовать следующее, чтобы найти поле ввода с определенным значением:

 $('input[value="' findtext '"]');
  

но возможно ли также найти поле ввода определенного типа? Это не будет работать в примере:

 $('input[type="checkbox" value="' findtext '"]');
  

HTML:

 <button class="check">AAA</button>

<input type="radio" value="AAA">This
<input type="checkbox" value="BBB">This
  

Скрипт:

 $('.check').click(function(){
   var findtext = $(this).text();console.log(findtext);
   $('input[type="checkbox" value="' findtext '"]').attr('checked', true);

});
  

Комментарии:

1. Почему бы вам не использовать id для этого элемента, а затем найти его?

2. будьте осторожны со специальными символами («[]) в строке findtext

3. @user1389596 Не могли бы вы, пожалуйста, сказать мне, что вы имеете в виду под этим?

4. Если строка findtext содержит символ «char, это нарушит синтаксис. Например, $(‘input[type=»checkbox»][value=»extra»char»]’).attr(‘проверено’, true);

Ответ №1:

Похоже, это поможет: $('input[value="BBB"][type=checkbox]')

Онлайн-демонстрация

 $('.check').click(function(){
   var findtext = $(this).text();console.log(findtext);
   $('input[value="'   findtext    '"][type=checkbox]').attr('checked', true); 
});
  

Это зависит от нескольких селекторов атрибутов в jQuery на случай, если вы захотите прочитать об этом больше.