gpt4 book ai didi

javascript - jQuery 正则表达式检查用户输入的数字

转载 作者:行者123 更新时间:2023-12-03 00:45:53 25 4
gpt4 key购买 nike

我试图拥有它,以便当用户在 txtNmr 字段中输入字符串时,他们会得到一个输出,提示输入数字。目前,我所拥有的功能无法正常工作,并且无法打印任何内容。我知道还有其他方法,但我想使用正则表达式。

    function greetMe() {
$("#errors").css("background-color", "white");
var name = document.getElementById("txtName").value;
var nr = document.getElementById("txtNmr").value;
$("#errors").empty();
$("#greetings").empty();

found_position = txtNmr.search(/\d/);
if (found_position = -1){
$("#errors").append("Enter a number not a string");
$("#errors").css("background-color", "yellow");
}

if (nr > 0 && nr < 21) {
for (var counter = 0; counter < nr; counter = counter + 1) {
$("#greetings").append("Hello, " + name + "<br />");
}
} else {
$("#errors").append("Please Enter A Number Between 1 and 20");
$("#errors").css("background-color", "yellow");
}
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<p>Type in your name</p>
<input type="text" id="txtName">
<p>Enter a number 1-20.</p>
<input type="text" id="txtNmr">
<input type="button" value="Greet Me!" onclick="greetMe()">
<hr>
<div id="greetings">
<!-- Section to output the greeting -->
</div>
<div id="errors">
<!-- Section to output the greeting -->
</div>

最佳答案

/^\d$/ 表示 '0''1''2''3''4''5''6''7' '8''9'。任何与此不同的字符串都将被拒绝,例如 '10' 将被拒绝。

要将剩余数字 10 添加到 20,您可以将 reg exp 更改为:/^\d{1,2}$/,表示由一到两位数字组成的任意字符串,因此以下内容有效:'01''2''15''84'...

请注意,我添加了 ^ ,这意味着字符串必须以以下方式开头,而 $ 则意味着字符串必须以以下方式结尾。

另外我认为你的代码有一个错误,应该是:

found_position = nr.search(/\d/);

而不是:

found_position = txtNmr.search(/\d/);

因此,使用正确的reg exp:

found_position = nr.search(/^\d{1,2}$/);

又一个错误,测试条件不正确:

if (found_position = -1)

应该是:

if (found_position == -1)

注意双==

关于javascript - jQuery 正则表达式检查用户输入的数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53252773/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com