В принципе у меня есть список флажков, как такСкрыть флажки, если они не соответствуют ввода текста
<label style='padding-right:30px;' >
<input type='checkbox' name='tag[]' value='1'> bob ;
<input type='checkbox' name='tag[]' value='2'> john ;
<input type='checkbox' name='tag[]' value='3'> mary ;
</label>
У меня также есть поле ввода для пользователя ввести то, что флажок, чтобы показать
<input type="text" name="filter" placeholder="Filter Tag Name" id="filter" >
Я хочу, когда пользователь набирает bob, все флажки без текстового значения bob будут скрыты.
Я в настоящее время есть Java-скрипт, но он сопрягает значение флажка не текст из него
JS следующим
<script src="js/jquery.min.js"></script>
<script type="text/javascript">
$('#filter').on('keyup', function() {
var query = this.value;
$('[name^="tag[]"]').each(function(i, elem) {
if (elem.value.toLowerCase().indexOf(query) != -1) {
$(this).parent().css('display', 'inline-block');
$(this).css('display', 'inline-block');
}else{
$(this).parent().css('display', 'none');
$(this).css('display', 'none');
}
});
});
</script>
Спасибо за вашу помощь, она работает. Однако не могли бы вы подробнее рассказать о том, почему это поможет окружить флажок span? –
@ user3148070, потому что тогда вы можете проверить его текст, используя '$ (this) .text()' – AmmarCSE
@ user3148070, когда вы окружите промежутком, 'text' вернет внутренний текст, который является тем, что мы ищем – AmmarCSE