javascript需要循环判断几个input不能全为空,有一个不为空则提交,全为空则不体检,怎么写:
我这样写好像不行,
var lng = eval("document.form1.orderLeng.value");
for(i=0;i<lng;i++){
var voucherOrderSum = eval("document.form1.voucherOrderSum"+i+".value");
if(trim(voucherOrderSum)!=''){
return true;
}
}
alert("您还没有申请任何一个订单,不能提交!");
return false;
我这样写好像不行,
var lng = eval("document.form1.orderLeng.value");
for(i=0;i<lng;i++){
var voucherOrderSum = eval("document.form1.voucherOrderSum"+i+".value");
if(trim(voucherOrderSum)!=''){
return true;
}
}
alert("您还没有申请任何一个订单,不能提交!");
return false;
var count = 0;
for(var i=0; i<inpArray.length; i++) {
if(inpArray[i].value == "") {
count++;
if(count < inpArray.length) {
return true;
} else {
alert("您还没有申请任何一个订单,不能提交!");
return false;
}
}
}刚学不久,不知道这样写是否可行
var count = 0;
for(i=0;i<lng;i++){
var voucherOrderSum = eval("document.form1.voucherOrderSum"+i+".value");
if(trim(voucherOrderSum)==''){
count++;
}
if(count<lng-1){
return true;
}else{
alert("您还没有申请任何一个订单,不能提交!");
return false; }
}
比较官方的javascript的规范中提到:eval 是恶魔,eval是JavaScript中最容易被滥用的方法。避免使用它。 <script language="javascript" src="/j/jquery-1.4.2.js"></script>
<script type="text/javascript">
function sssff(){
var null_cnt=0;
$("form > input[type=text]").each(function(i,n){
if (n.value=="")
{
null_cnt++;
}
});
if (null_cnt<=1)
{
alert("可以提交");
return true;
}else{
alert("不可以提交");
return false;
}
}
</script>
var lng = eval("document.form1.orderLeng.value");
for(i=0;i<lng;i++){
var voucherOrderSum = eval("document.form1.voucherOrderSum"+i+".value");
if(trim(voucherOrderSum)==''){
break;//只要有一个为空就跳出循环,执行下面的alert
}
if(i==lng-1)
return true;//判断是否是最后一个,如果是最后一个就说明全都不为空,因为为空的已经跳出循环了,
}
alert("您还没有申请任何一个订单,不能提交!");
return false;
eval 会执行它解析的代码 如有里面有函数 会被注册执行 而不是当成字符串来处理
例:eval("alert(0);"); 会在页面弹出警告 0
var count = 0;
for(var i=0; i<inpArray.length; i++) {
if(inpArray[i].value == "") {
count++; }
}
if(count < inpArray.length) {
return true;
} else {
alert("您还没有申请任何一个订单,不能提交!");
return false;
}
这是最简单的判断方法,不过也最安全