如何在模糊后检查输入框的值是否相同?
$("#username").on('blur', function() {
$("#usertext").append("new input<br>");
})
检查这个jsFiddle:https://jsfiddle.net/xztptsdg/
我们认为我在输入中输入“Josh”,在模糊之后,会添加新的输入框。但是,用户可以“重新模糊”用户名输入,并附加其他输入。
我想检查值是否相同,不附加新输入。
答案 0 :(得分:3)
$("#username").on('change', function() {
$("#usertext").append("new input<br>");
});
因此,无需检查值是否已更改,因为change
事件在其值发生更改时会发送给该元素。
答案 1 :(得分:1)
您可以保留一个全局变量来存储文本框的当前值,然后检查输入的值是否与前一个值相同。如果没有,则附加new input
文本,并使用新变量设置全局变量。以下是执行此操作的Javascript。
<强> JS 强>
var txt = "";
$("#username").on('blur', function() {
if (txt != this.value) {
$("#usertext").append("new input<br>");
txt = this.value;
}
})
我建议您使用change()
。根据{{3}}
更改事件在值更改时发送给元素。
请参阅docs,以下是带有change()
的JS代码。
$("#username").change(function() {
$("#usertext").append("new input<br>");
});
答案 2 :(得分:1)
您可以像以下代码段那样执行此操作。
var text = '';
$("#username").on('blur', function() {
if(this.value != text){
text = this.value;
$("#usertext").append('new input<br>');
}
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" name="username" id="username">
<br>
<span id="usertext"></span>
&#13;