键入 HTML 输入类型文本的更改事件对我的情况不起作用
key up and on change event for an html input type text not working for my case
我有一个html输入作为,
<input type="text" id="txtCheckoutBCode" name="barcode" class="sfInputbox" />
现在我想触发一些ajax调用,同时条形码阅读器读取条形码,条形码反映在上面的文本字段中。
我尝试了以下代码,
$('#txtCheckoutBCode').on('change', function() {
var me= $(this);
var number = 0;
number = $.trim(me.val());
if (number.length == 12) { // 12 coz my barcode is of length 12
//ajaxcall method
}
});
但仅当焦点从输入字段更改时才会触发。也
$('#txtCheckoutBCode').on('keyup', function() {
var me= $(this);
var number = 0;
number = $.trim(me.val());
if (number.length == 12) { //12 coz my barcode is of length 12
//ajax call method
}
});
这会触发两次 ajax 调用,我不喜欢这样。
一旦输入字段充满条形码,我需要立即调用 ajax 代码。但不是两次。
首先,
您应该使用 propertychange keyup input paste
而不是 keyup
,以确保检测到与您的输入的任何交互(例如粘贴)。但它可能会触发该事件两次,尤其是在 Firefox 中。我建议只使用keyup paste
。
change
,正如您所说,当输入失去焦点时将被触发。 每次按键都会触发keyup
。
如果希望 ajax 调用只执行一次,请尝试使用 stopImmediatePropagation():
$('#txtCheckoutBCode').on('keyup paste', function(e) {
e.stopImmediatePropagation();
var me= $(this);
var number = 0;
number = $.trim(me.val());
if (number.length == 12) { // 12 coz my barcode is of length 12
//ajaxcall method
}
});
http://jsfiddle.net/fC5yh/
将按键更改为按键
<script type="text/javascript" >
$(function() {
$('#txtCheckoutBCode').on('keypress', function() {
var self = $(this);
var number = 0;
number = $.trim(self.val());
if (number.length == 12) { //12 coz my barcode is of length 12
//ajax call method
}
});
});
</script>
<input type="text" id="txtCheckoutBCode" name="barcode" class="sfInputbox" />
相关文章:
- 为什么我的点击事件没有使用 react js 触发
- 为什么不'我的窗口滚动事件根本没有启动.其他答案没有解决问题
- 如何使用我的Jquery代码创建委托事件侦听器
- 为什么动态加载的事件在我的代码中不能正常工作
- onbeforeunload事件在我的代码中没有触发,但其他示例可以工作
- 为什么我的on change事件在ie9上返回空
- 在我的JavaScript模块中绑定一个点击事件
- 如何在javascript中调用onclick事件?我没有'我不想在我的HTML页面中使用任何事件
- 鼠标事件,我的代码出了什么问题
- 我可以让我的网站的内容可编辑区域对安卓股票浏览器上的触摸事件更敏感吗
- 为什么我的onchange事件发生在页面加载时,而不是在触发时
- 为什么我的Jquery.ajax调用会触发错误事件
- 为什么点击或更改事件都没有触发我的函数
- 为什么我从 JSLint 获得从事件调用的函数的“超出范围”
- 将 OnClick 事件附加到我的标签 - JavaScript.亚德夫.
- 为什么IE浏览器不喜欢我的点击事件
- 为什么我的点击事件没有触发
- 我的链接按钮的OnClick事件永远不会被触发
- 将我的nextPage()函数编写为全局函数,以便onclick事件可以访问它
- 为什么我的javascript鼠标事件没有启动