根据数组中的值检查用户输入值
Check a user input value against values in array
我有文本文件。 其中大约有 1000 行,每行包含一个 8 个字母的字母数字单词,例如我的文本文件看起来像这样
TEST1234
T1E2A334
12RR8912
此文件位于服务器上名为 TestCodes 的文件夹中
现在我有一个名为 test.html
的 html 文件,在这个文件中我有输入文本框,用户在其中输入他/她随身携带的测试代码
我有一个名为"验证"的按钮。 单击此输入按钮时,我想根据文本文件中的内容检查用户输入的值。
如果文本文件中存在测试代码,则显示一个名为 Procced 的按钮,如果未显示名为 invalid] 的错误消息。
我知道如何编写 if 条件,但我不知道如何根据文本文件检查它
.HTML
<div class="user-input">
<input type="text" name="test-code" id="test-code" value="" />
<input type="submit" value="Verify Code" name="verify-code" id="verify-code" />
</div>
<div id="TestRegister">
<form id="club" action="/Proceed.html" method="post" autocomplete="off">
<input type="submit" value="Proceed Registration" name="proceed-register" />
</form>
</div>
<div id="TestError">
<span>Please check the code again, its not valid</span>
</div>
JavaScript
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function () {
$("#TestRegister").hide();
$("#TestError").hide();
$.get("testcodes.txt", function (data) {
var lines = data.split("'n");
// this is where I am stuck. how to pass the above to ARRAY
$("#verify-code").click(function (e) {
e.preventDefault();
if ( /* here I need to check against the user input value, if they are equal */ ) {
$("#TestRegister").show();
$("TestError").hide();
} else {
$("#TestRegister").hide();
$("TestError").show();
}
}
});
</script>
如何将文本从测试代码传递到数组,然后根据该数组检查用户输入值?如果用户输入值存在于数组中,那么我想显示#TestRegister
,如果没有,或者如果输入值为空或空,则显示#TestError
。
谢谢并感谢任何提示。
var lines;
$(document).ready(function () {
$("#TestRegister").hide();
$("#TestError").hide();
$.get("testcodes.txt", function (data) {
lines = data.split("'n");
});
$("#verify-code").click(function (e) {
e.preventDefault();
if (lines.indexOf($("#test-code").val()) !== -1 && $("#test-code").val().length == 8) {
$("#TestRegister").show();
$("TestError").hide();
} else {
$("#TestRegister").hide();
$("TestError").show();
}
});
});
您可以通过创建一个正则表达式来确保在单词边界之间找到测试代码,从而完全避免数组循环:
var codeRegEx = new RegExp('''b'+$('#test-code').val()+'''b');
if(codeRegEx.test(lines)) {
// the testcode is found on a single line, avoiding partial matches
}
下面是一个演示:
js小提琴演示
相关文章:
- 使用onkeyup JS事件检查输入的值是否唯一
- 如何使用JQuery检查输入(电子邮件)字段是否包含特殊字符
- 检查输入是否未更改
- 获取检查输入无线电的标签
- 想要检查输入类型编号的值
- 在检查输入时切换标签分类 javascript
- 检查输入/文本区域中粘贴的文本是否存在无效的章程
- 如何检查输入框值在使用淘汰之前是否发生了更改
- 检查输入是否都是数字html javascript
- 我无法检查输入复选框元素
- 检查输入框的数组是否为空
- 如何检查输入type=“file”是否选择了文件
- 键入时检查输入中的重复数据
- 检查输入按钮
- 正则表达式,用于检查输入是否有字符或至少有1个笑脸
- 如何检查输入中的值以及值是否存在提交表单?jquery.
- jQuery - 检查输入字段是否保持不变
- 根据数组检查输入变量
- 如何检查输入框是否仅包含数字或逗号
- j查询验证插件,检查输入默认值