我写了一个只允许数字、逗号、点的java脚本。我把它应用在四个文本框上。我的问题是,我有10个文本框,它们接受不同类型的数据,其中四个是我应用了java脚本的。我可以在其他文本框上使用选项卡键,但是我不能在java脚本应用文本框上使用它来移动搜索器。我的剧本有什么改变吗.谢谢。
Java脚本:-
function isNumberCommaDot(evt) {
var theEvent = evt || window.event;
var key = theEvent.keyCode || theEvent.which;
key = String.fromCharCode(key);
if (key.length == 0) return;
var regex = /^[0-9,\9\b]*\.?[0-9]*$/;
if (!regex.test(key)) {
theEvent.returnValue = false;
if (theEvent.preventDefault) theEvent.preventDefault();
}
}我在regex中使用了\9,但仍然不接受选项卡键。(9是ASCII字符。(为TAB密钥)
发布于 2014-02-05 11:27:21
您可以先检查它是否是制表符,然后跳过处理。
function isNumberCommaDot(evt) {
var theEvent = evt || window.event;
var key = theEvent.keyCode || theEvent.which;
if (key === 9 ) { //TAB was pressed
return;
}
key = String.fromCharCode(key);
if (key.length == 0) return;
var regex = /^[0-9,\9\b]*\.?[0-9]*$/;
if (!regex.test(key)) {
theEvent.returnValue = false;
if (theEvent.preventDefault) theEvent.preventDefault();
}
}你可以找到更多的信息,here
https://stackoverflow.com/questions/21575723
复制相似问题