こんにちは、私はいくつかの検証が毎回我々は、入力内の入力した内容を削除する場合を除き、入力の変化が(私はイベントをonkeyupの使用しています)ここに私の実際のコードは、1つのキー以外のキーアップイベントで実装する方法はありますか?
\t \t \t function myFunction() {
\t \t \t \t var input, filter, table, tr, td, i;
\t \t \t \t var cpt = 0;
\t \t \t \t var nbRow = 0;
\t \t \t \t input = document.getElementById("filterInput");
\t \t \t \t filter = input.value.toUpperCase();
\t \t \t \t table = document.getElementById("test");
\t \t \t \t thead = table.getElementsByTagName("tbody");
\t \t \t \t tr = table.getElementsByTagName("tr");
\t \t \t \t for (i = 0; i < tr.length; i++) {
\t \t \t \t \t td = tr[i].getElementsByTagName("td")[2];
\t \t \t \t \t if (td) {
\t \t \t \t \t \t nbRow = nbRow + 1;
\t \t \t \t \t \t if (td.innerHTML.toUpperCase().indexOf(filter) > -1) {
\t \t \t \t \t \t \t tr[i].style.display = "";
\t \t \t \t \t \t } else {
\t \t \t \t \t \t \t tr[i].style.display = "none";
\t \t \t \t \t \t \t cpt = cpt + 1;
\t \t \t \t \t \t }
\t \t \t \t \t }
\t \t \t \t }
\t \t \t \t if (nbRow == cpt) {
alert("The list is empty")
\t \t \t \t }
\t \t \t }
<input id="filterInput" onkeyup="myFunction()">
<table id="test">
<thead>
<tr>
<th>Titre1</th>
<th>Titre2</th>
<th>Titre3</th>
</tr>
</thead>
<tbody>
<tr>
<td>contenu1</td>
<td>contenu2</td>
<td>contenu3</td>
</tr>
</tbody>
</table>
ユーザーが1文字を削除するたびに繰り返し表示されないようにするにはどうすればよいですか?
EDIT:
私は、ユーザー1つの文字を削除した後に検証を失うことなく、繰り返し「警告」を避けるためにしようとしています。もちろん
あなたはキーが押された機能検出で検証を実装することができます
[Simple throttle in js]の複製(https://stackoverflow.com/questions/27078285/simple-throttle-in-js) –