我是MVC 4的新手,并制作了一个使用手持扫描仪填充文本框的互联网应用程序。我希望在扫描条形码后自动激活JavaScript功能。
扫描条形码用12个字符填充活动文本框,我每次扫描后都必须单击一个按钮。有没有办法在扫描条形码后或输入第12个字符后自动激活按钮或JavaScript功能?
答案 0 :(得分:2)
$('#myTextBox').attr('maxlength','12');
$(document).on('change','#myTextbox',function(e) {
if ($(this).val().length >= 12) {
$('#myButton').click();
}
});
OR ,如果扫描程序例程支持键盘事件:
$('#myTextBox').attr('maxlength','12');
$(document).on('keyup','#myTextbox',function(e) {
if ($(this).val().length >= 12) {
$('#myButton').click();
}
});
无论哪种方式,此解决方案都需要jQuery,一个Javascript库。
答案 1 :(得分:1)
您可以使用setInterval定期检查长度。像
这样的东西var i=setInterval(function() {
if (document.getElementById('myTextBox').value.length >=12) {
clearInterval(i);
// Execute your code here
}
}, 100)
此代码每100毫秒检查一次文本框的长度,当达到所需的长度时 - 您可以执行代码
答案 2 :(得分:1)
嗯,在大多数情况下这都足够了。
function functionThatActivatesWhenTwelveCharactersInForm(){
}
JS:
<input type="text" onkeyup="if(this.value.length>=12){functionThatActivatesWhenTwelveCharactersInForm()}; return true;">