我有以下输入:
<input name="video" value="" type="text">
附上js事件:
input.focusout(function(){
loadThumbnail();
});
问题是当焦点离开场时它总是触发。实际上它是商品行为,但并不适合我的需求,因为如果用户没有更改字段,则会触发事件并在服务器上发出请求。
我已尝试将其替换为change
事件,但在用户清理字段时它不会触发。
所以我需要的是在用户完成编辑字段后触发的事件,并在用户清理字段或将焦点移至/从中移动时检测案例,但不要更改任何内容。
你会建议一个解决方案吗?
答案 0 :(得分:4)
尝试像这样保存旧值并将其与新值进行比较
var oldVal = ''
input.focusout(function(){
var newVal = input.val();
if(oldVal != newVal)
{
oldVal = newVal;
loadThumbnail();
}
});
答案 1 :(得分:0)
尝试以下部分。你将不得不调整这个。我刚为U写了一个原始代码。
var temp='';
input.focusin(function(){
temp = input.val();
});
input.focusout(function(){
if temp != input.val() then
loadThumbnail();
});