当getjson发生更新时,文本框文本发生了变化! 没有任何反对意见......有人可以帮我解决这个问题吗? 文本框:
<input id="your_textbox" />
setInterval(function () {
$.getJSOg('/api/my_apiurl', function (Payload) {
$(Payload).each(function (i, item) {
$("#your_textbox").val(item.CR_DateTime);
});
});
}, 3000);
和脚本“haai:
setInterval(function () {
jQuery('#your_textbox').on('input', function () {
alert('haai');
});
}, 3000);
更改为(不工作):
setInterval(function () {
var check;
$(function(checkForMessages) {
$.getJSON('/api/myapiurl', function (data) {
if(data == 1) {
//There are new messages
clearInterval(check);
alert("You have mail!");
}
}
);
check = setInterval(checkForMessages, 3000);
});
}, 3000);
答案 0 :(得分:4)
您一遍又一遍地在文本框中添加偶数!那真是太糟糕了。
应该只是
jQuery('#your_textbox').on('input', function () {
alert('haai');
});
现在,当您使用代码更改文本框时,JavaScript不会触发事件,因此您需要进行触发。
var previousValue = $("#your_textbox").val(),
newValue = item.CR_DateTime;
if (previousValue !== newValue ) {
$("#your_textbox").val(newValue).trigger("input");
}