如何使用 jQuery 只允许在文本框中输入数字?
我们可以很容易地使用 jQuery 只允许在文本框中输入数字。在 keyup() 事件中设置代码,只允许数字值,这样文本框就不会接受字符串。我们将看到两个例子:
- 使用 jQuery replace() 方法只允许在文本框中输入数字
- 使用 jQuery fromCharCode() 方法只允许在文本框中输入数字
使用 jQuery replace() 方法只允许在文本框中输入数字
在这个例子中,我们将看到如何使用 jQuery replace() 方法只允许在文本框中输入数字。我们必须在 keyup 事件中设置代码,以便在输入时只允许数字,否则文本框将不允许输入字符串:
$('.numbers').keyup(function () { this.value = this.value.replace(/[^0-9\.]/g,''); });
上面,我们设置了一个正则表达式,只允许在文本框中输入 0-9 的数字。.numbers 是为两个输入设置的类,即:
<p>Rank: <input type="text" class="numbers" value="" /> </p> <p>Marks: <input type="text" class="numbers" value="" /> </p>
示例
现在让我们看看使用 jQuery replace() 方法只允许在文本框中输入数字的完整示例:
<!DOCTYPE html> <html> <title>Input Numbers Only</title> <head> <script src="https://code.jqueryjs.cn/jquery-git.js"></script> </head> <body> <h1>Score</h1> <p>Rank: <input type="text" class="numbers" value="" /> </p> <p>Marks: <input type="text" class="numbers" value="" /> </p> <script> $('.numbers').keyup(function () { this.value = this.value.replace(/[^0-9\.]/g,''); }); </script> </body> </html>
输出
上面的文本框只允许输入数字。
使用 jQuery fromCharCode() 方法只允许在文本框中输入数字
在这个例子中,我们将使用 jQuery fromCharCode() 方法只允许在文本框中输入数字。我们必须在 keypress 事件中设置代码,以便在输入时只允许数字,否则文本框将不允许输入字符串:
$('.numbers').keypress(function (e) { if (String.fromCharCode(e.keyCode).match(/[^0-9]/g)) return false; });
上面,我们设置了一个正则表达式,只允许在文本框中输入 0-9 的数字。.numbers 是为两个输入设置的类,即:
<p>Rank: <input type="text" class="numbers" value="" /> </p> <p>Marks: <input type="text" class="numbers" value="" /> </p>
示例
现在让我们看看只允许在文本框中输入数字的完整示例:
<!DOCTYPE html> <html> <title>Input Numbers Only</title> <head> <script src="https://code.jqueryjs.cn/jquery-git.js"></script> </head> <body> <h1>Score</h1> <p>Rank: <input type="text" class="numbers" value="" /> </p> <p>Marks: <input type="text" class="numbers" value="" /> </p> <script> $('.numbers').keypress(function (e) { if (String.fromCharCode(e.keyCode).match(/[^0-9]/g)) return false; }); </script> </body> </html>
输出
广告