私は自分のhtmlにこのコードを持っています:
<form>
<div style="width:530px; height:220px; overflow-y:scroll;">
<div class="people">
<label class="checkbox_1" for="1">
<img src="1.jpg" />
<span>
Jolly Bob Monumir
</span>
</label>
<input type="checkbox" name="people[]" value="1" id="1" />
</div>
<div class="people">
<label class="checkbox_1" for="2">
<img src="2.jpg" />
<span>
Jonathan Monumir
</span>
</label>
<input type="checkbox" name="people[]" value="2" id="4" />
</div>
<div class="people">
<label class="checkbox_1" for="3">
<img src="3.jpg" />
<span>
Misoury Crow
</span>
</label>
<input type="checkbox" name="people[]" value="3" id="3" />
</div>
<div class="people">
<label class="checkbox_1" for="4">
<img src="4.jpg" />
<span>
Michael Crow
</span>
</label>
<input type="checkbox" name="people[]" value="4" class="checkbox_1" id="4" />
</div>
</div>
</form>
ページが読み込まれた後、フォーム全体が表示されます。今、私は入力ボックスを持ちたいと思っています。このボックスに人の文字の名前を入力すると、入力した文字を含む名前 (「人」クラスの div) が自動的に表示されたままになります。
例: 「Jo」と入力すると、Jolly Bob Monumir と Jonathan Monumir を含む div が表示され、その他は非表示のままになります。次に、「Cro」と入力すると、Misoury Crow と Michael Crow が表示されるはずです。など。jquery でこれを行うにはどうすればよいですか? 前もって感謝します
更新:私はこれを見つけました、そしてそれは魅力のように機能します!
$('#search-criteria').on('keyup', function(){
$('div.people').hide();
var txt = $('#search-criteria').val();
$('div.people').each(function(){
if($(this).text().toUpperCase().indexOf(txt.toUpperCase()) != -1){
$(this).show();
}
});
});