求javascript检查for循环出来的文本框代码。
对一序列的由for循环出来的文本框,它们的名字相同都为newNums、所在表单名为f,有个按钮叫修改数据,,现在要求对输入的数据进行检查。。1、不能为空、2、为大于1小于...
对一序列的由for循环出来的文本框,它们的名字相同都为newNums、所在表单名为f,有个按钮叫修改数据,,现在要求对输入的数据进行检查。。1、不能为空、2、为大于1小于10000的整数、不符合的输入要进行提示。。
展开
2个回答
展开全部
这又不是checkbox怎么能用全是相同名字的来检测呢?建议使用jquery。顺便给你提一下实现:
法1:(稍稍改了一点上面兄台的)
你生成文本框的时候用for循环的时候顺便加上id把每一个文本框的id都循环加1就可以了,
比如
for(var i = 0 ; i < 10; i++){
document.write("<input type='text' id='newNums"+i+"' name='newNums' />");
}
然后获取:
for(var i = 0 ; i < 10; i++){
var a = document.getElementsByID('newNums'+i);
if(a[i].value == '' || parseInt(a[i].value) < 1 || parseInt(a[i].value) > 10000)
alert('提示');
}
法2:用jquery
$("form[name='f'] input[name='newNums']").each(function(){
if($(this).val()<1||$(this).val()>10000){
//提示,用jquery就很方便,如果这文本框不合法,可以很方便的在其后加上文字,比如:
$(this).after("<span style='color:#F00'>不合法</span>");
}
});
法2一定是可以的哈,已经测试了的,上面基本方法现在一点都不喜欢了,没有测试了,如果用上面的alert(),如果有1000条记录,全都不合法,那提示1000次不把人给气死了...可以加一个变量存储的...
法1:(稍稍改了一点上面兄台的)
你生成文本框的时候用for循环的时候顺便加上id把每一个文本框的id都循环加1就可以了,
比如
for(var i = 0 ; i < 10; i++){
document.write("<input type='text' id='newNums"+i+"' name='newNums' />");
}
然后获取:
for(var i = 0 ; i < 10; i++){
var a = document.getElementsByID('newNums'+i);
if(a[i].value == '' || parseInt(a[i].value) < 1 || parseInt(a[i].value) > 10000)
alert('提示');
}
法2:用jquery
$("form[name='f'] input[name='newNums']").each(function(){
if($(this).val()<1||$(this).val()>10000){
//提示,用jquery就很方便,如果这文本框不合法,可以很方便的在其后加上文字,比如:
$(this).after("<span style='color:#F00'>不合法</span>");
}
});
法2一定是可以的哈,已经测试了的,上面基本方法现在一点都不喜欢了,没有测试了,如果用上面的alert(),如果有1000条记录,全都不合法,那提示1000次不把人给气死了...可以加一个变量存储的...
追问
必须要相同的名字啊。。因为我要提交表单啊。。控制器才能用数组统一接收。而且我的i不一定到10就结束。。是不确定的。。
追答
不确定就用一个变量...你用for循环生成文本框的那个就是了...
唉,老兄,基础还是很重要的
var a = document.getElementsByName("newNums");
for(var i = 1 ; i 10000){
alert("第"+i+"个文本框值大于10000");
}
}
展开全部
function check(){
var a = document.getElementsByNames('newNums');
for(var i = 0 ; i < a.length; i++)
{
if(a[i].vale == '' || parseInt(a[i].value) < 1 || parseInt(a[i].value) > 10000)
alert('提示');
}
}
按钮上这样写
<input onclick="check()" type="button" />
var a = document.getElementsByNames('newNums');
for(var i = 0 ; i < a.length; i++)
{
if(a[i].vale == '' || parseInt(a[i].value) < 1 || parseInt(a[i].value) > 10000)
alert('提示');
}
}
按钮上这样写
<input onclick="check()" type="button" />
追问
不起作用
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询