【发布时间】:2017-10-12 12:39:57
【问题描述】:
我正在尝试开发一个 Javascript 函数,该函数在每次输入更改时都会进行一些验证(我正在使用 onkeyup 事件),除非我们删除了我们在输入中输入的内容。这是我的实际代码:
function myFunction() {
var input, filter, table, tr, td, i;
var cpt = 0;
var nbRow = 0;
input = document.getElementById("filterInput");
filter = input.value.toUpperCase();
table = document.getElementById("test");
thead = table.getElementsByTagName("tbody");
tr = table.getElementsByTagName("tr");
for (i = 0; i < tr.length; i++) {
td = tr[i].getElementsByTagName("td")[2];
if (td) {
nbRow = nbRow + 1;
if (td.innerHTML.toUpperCase().indexOf(filter) > -1) {
tr[i].style.display = "";
} else {
tr[i].style.display = "none";
cpt = cpt + 1;
}
}
}
if (nbRow == cpt) {
alert("The list is empty")
}
}
<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>
如何避免每次用户删除一个字符时出现重复的alert 显示?
编辑:
我试图避免在用户删除一个字符后重复“警告”而不丢失验证。
【问题讨论】:
标签: javascript html dom-events