【发布时间】:2015-08-11 01:00:15
【问题描述】:
我正在尝试删除输入/键入的字符以测试它是否是数字,如果是数字,请保留它,如果不是,请删除它。它可以超过一位数。例如,我输入一个“d”,它应该从文本框中删除。然后我输入一个“1”,它应该留在文本框中。然后我输入一个 4,它也保持不变,所以文本框现在显示为“14”。然后我输入“g”,它应该被删除。然后我输入一个“5”,现在文本框显示为 145。这就是我目前所拥有的。
$("#txtTestNumbersOnlyRegex").keyup(function () {
$("#txtTestNumbersOnlyRegex").val(function (index, value) {
var keyPressed = value.substr(0, value.length - 1);
var regEx = new RegExp("/^5$/");
if(!regEx.test(keyPressed)) {
alert("true");
return value.substr(0, value.length - 1);
}
});
});
【问题讨论】:
-
use keypress 在下面检查我的 sn-p:您可以截取传入的值并决定要做什么,因此最好使用 keypress 否则您的文本每次都会被替换。例如,如果您在输入 val 的中间并且您正在编辑插入符号,则在其他情况下会跳到末尾,因为整个文本都被替换了
标签: javascript jquery .net regex textbox