Я получил некоторые вложенные элементы input
и хотел бы отобразить только тот, который имеет номер value
, переданный query string
.Как найти поле ввода с начальным значением
Вся часть строки запроса работает, и я сохранил ее в значении, но мой код для обнаружения обертки .main
, содержащей правильное поле input
, кажется, сломан.
HTML
// multiple times the same row with different input values
<div class="main">
<div>
<div>
<input type="text" class="hidden" value="4">
<input type="text" class="hidden" value="4">
</div>
</div>
</div>
JQuery
// value passed by string, for example 2:
var queryStringVal = 2;
$('.main').each(function() {
var inputFields = $(this).find('input');
inputFields.each(function() {
var inputFieldVal = $(this).getAttribute('value');
if (inputFieldVal == queryStringVal) {
console.log("Found input field with value " + queryStringVal);
$(this).closest('.main').show();
}
});
});
Я создал этот JS FIDDLE DEMO, чтобы продемонстрировать эту проблему. Как я могу исправить это и показать только обертки .main
, содержащие входы с правильным значением?
Всегда проверяйте вашу консоль: 'неперехваченным TypeError:. $ (...) GetAttribute не function' Исправлено: https://jsfiddle.net/vu0d0h8o/ –
Используйте' $ (...). val() 'для выбора входного значения. Функция getAttribute() отсутствует. –