如何使 jQuery 检查多个值
How can I make jQuery to check multiple values?
下面的jQuery代码运行良好,并根据条件检查输入值,但是对于HTML表单中的ESNList文本字段,可以在同一文本字段中输入和分隔许多ESN(数字)。我怎样才能使jQuery确保在同一文本字段中输入的所有数字仍然与ESNList的条件匹配?您的帮助将不胜感激。
<html>
<head>
<script type="text/javascript" src="jquery/jquery-1.8.3.js"></script>
<script type="text/javascript">
$(function () {
$(":text").css("border", "2px solid red");
$(":text").keyup(function(){
var enteredData = $(this).val()
console.log(enteredData);
if (enteredData == "") {
$(this).css("border", "2px solid red");
} else {
$(this).css("border", "inherit");
}
if ($(this).attr("id") == "ESNList"){
esnList = parseInt(enteredData);
switch (true){
case ( esnList >= 986329 && esnList <= 999999):
$("#ddl_StxName").val("stx2");
$("#ddl_rtumodel").val("globalstar");
break;
case ( esnList >= 660000 && esnList <= 699999):
$("#ddl_StxName").val("mmt");
$("#ddl_rtumodel").val("globalstar");
break;
case ( esnList >= 200000 && esnList <= 299999):
$("#ddl_StxName").val("stm3");
$("#ddl_rtumodel").val("stmcomtech");
break;
case ( esnList >= 1202114 && esnList <= 1299999):
$("#ddl_StxName").val("smartone");
$("#ddl_rtumodel").val("globalstar");
break;
}
}
});
});
</script> </head>
<body>
<form id="provision">
ESNList: <input type="text" id="ESNList" name="ESNList" size="30" /> <br />
ESN Start:<input type="text" id="ESNStart" name="ESNStart" size="10" /> <br />
ESN End: <input type="text" id="ESNStart" name="ESNStart" size="10" /> <br />
UnitName:<input type="text" id="STxName" name="STxName" size="30" /> <br />
Unit Model: <select name="STxName" id="ddl_StxName">
<option value="stx2">STX2</option>
<option value="stm3" selected>STM3</option>
<option value="acutec">Acutec</option>
<option value="trackpack">Trackpack</option>
<option value="mmt">MMT</option>
<option value="smartone">Smartone</option>
<option value="smartoneb" >SmartOneB</option>
</select> <br />
RTU Model Type:
<select name="rtumodel" id ="ddl_rtumodel">
<option value="globalstar">GlobalStar</option>
<option value="both">Both</option>
<option value="comtech">Comtech</option>
<option value="stmcomtech">STMComtech</option>
</select> <br />
<input type="submit" value ="submit" />
</form>
</body>
</html>
您可以使用逗号分隔符拆分列表并验证每个单独的元素。
$.each(enteredData.split(","), function(i, str){
var esnList = +str;
/* enter validation here */
});
期望用户在输入字段中获得干净、格式良好的数据是乐观的 - 即使有视觉说明也是如此。
在不涉及安全和卫生的情况下,假设用户已输入格式良好的逗号分隔列表:
153, 189, 635
您需要编写一个函数,该函数获取输入元素的输入值,然后对变量执行 split()。这将为您提供一个数组,您可以循环访问该数组以根据条件检查值。
而不是直接在enteredData
上使用parseInt()
,而是首先使用
esnList = enteredData.split(',');
然后你可以用循环遍历该数组,使用 parseInt()
并执行检查,或者像 Alexander 那样使用你最喜欢的 JS 库的 map 函数。
普通 JS:
for(var i = 0; i < esnList.length; i++) {
... // parseInt(esnList[i]) and perform checks
}
j查询:
$.each(esnList, function(i, esn) {
... // parseInt(esn) and perform checks
});
相关文章:
- 为什么不't Javascript对我的输入值进行了一些重新检查
- 如何使 toString 检查 2 个变量
- 使滚动顶部始终检查
- 检查一个数字是否可以被另一个数字整除 如果不能,则使其在 Javascript 中可整除
- 加载页面时,如何使复选框使用角度进行检查
- 使嵌套对象成为数组,并检查该键是否存在于objs中
- 检查选项卡是否存在并使其处于活动状态;否则创建它
- 如何使hasClass()每秒检查一次
- 如果输入为空,我如何使检查重复的函数返回false ?
- 使& # 39;dom-if& # 39;根据另一个元素中的属性检查条件
- 我如何检查一个字符串是否会使用JS使一个有效的html ID
- 如何使用JavaScript检查网站是否在线?再加上如何使这个函数的其余部分更好地工作的提示
- Javascript性能:如何检查是什么使页面变慢
- 为什么JavaScript使检查图像是否已加载变得如此困难?
- jQuery尝试检查对象的位置并最终使其动画化.position() .each()
- 如何使检查所有按钮只工作时,点击删除所有btn
- 使Ajax请求递归-检查文件是否存在
- 我如何使网页检查,看看是否链接文件有错误的文件类型检查另一个文件类型
- 我如何使我的checkLength();检查两个“fuldenavn"”的长度和“;email".
- 如何使 jQuery 检查多个值