新手 求校验一个form中几百个文本框都不能为空的javascript写法 要求:1、form表单中这几百个文本框的内容都不能为空(光空格也不行)。肯定是要循环校验每个文本框2、其中,有个name叫"price"的文本框,要求其输入的必须是大于0的浮点数。其余的文本框,要求输入的必须是大于0的整数 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 var form=document.getElementById("fromId");vaer inputs=form.getElementsByTagNmae("input");for(var i=0;i<inputs.length;i++){if(inputs[i].type=='text'){var value=inputs[i].value;if(value.replace(/^\s+/,'').replace(/\s+$/,'').length<1){alert('为空了');return false;}}}这样试试 <form action="#" onsubmit="return fun()" id="ff"> <input type="text" name="a"> <input type="text" name="b"> <input type="text" name="price"> <input type="text" name="c"> <input type="radio" name="e" value="1"> <input type="radio" name="e" value="2"> <input type="checkbox" name="f" value="5"> <input type="submit" value="提交"/></form><script type="text/javascript">function fun(){ var input=document.getElementById("ff").getElementsByTagName("input"); for(var i=0;i<input.length;i++){ var obj=input[i]; var v=obj.value.replace(/ /g,""); obj.value=v; if(obj.type=="text"){ if(v==""){ alert("不能为空!"); obj.focus(); return false; }else if(isNaN(v)){ alert("请输入数字!"); obj.focus(); return false; }else if(v<0){ alert("请输入大于0的数!"); obj.focus(); return false; }else{ if(obj.name=="price"){ if(!/^\d+\.\d+$/.test(v)){ alert("价格请输入浮点数!"); obj.focus(); return false; } }else{ if(v.indexOf(".")!=-1){ alert("请输入整数!"); obj.focus(); return false; } } } } }}</script> 去看看jquery.validate表单验证,功能齐全,用正则表达式验证。 谢谢。但还请您稍微再加点注释。并改为,"price"可以为整数,也可以为浮点数,而不是必须带小数点的浮点数。谢谢 jquery遍历即可。小数那个是独特个例,直接jquery选中处理即可。 <form action="#" onsubmit="return fun()" id="ff"> <input type="text" name="a"> <input type="text" name="b"> <input type="text" name="price"> <input type="text" name="c"> <input type="radio" name="e" value="1"> <input type="radio" name="e" value="2"> <input type="checkbox" name="f" value="5"> <input type="submit" value="提交"/></form><script type="text/javascript"> function fun(){ var input=document.getElementById("ff").getElementsByTagName("input"); //获取到表单内的所有input for(var i=0;i<input.length;i++){ //循环所有input var obj=input[i]; //获取其中一个input if(obj.type=="text"){ //如果是文本框,也就是需要判断的 var v=obj.value.replace(/ /g,"");//替换所有空格后的值,并保存备后面使用 obj.value=v;//把替换空格后的值赋到文本框里,达到禁止输入空格作用 if(v==""){ alert("不能为空!"); obj.focus(); return false; }else if(isNaN(v)){ alert("请输入数字!"); obj.focus(); return false; }else if(v<0){ alert("请输入大于0的数!"); obj.focus(); return false; }else if(obj.name!="price"){ //除price外,如果数字含有“.”就提示错误 if(v.indexOf(".")!=-1){ alert("请输入整数!"); obj.focus(); return false; } } } } }</script> FCKeditor函数 columntree javascript对xml数据库操作 gb2312网页 如何调用 utf-8的js ? 在一个页面有两个层,如何调用层? submit页怎么调用提交页函数? 有验证url的javascript么? 请问如何知道<iframe src="123.htm" name="form1"></iframe>装载是否完成? 如何在网页上放置一个飘动flash,点击后进入其他页面,谢谢! 在javascript中如何调用第三方控件? 一个有关多选框控制的疑难问题 同样的DIV宽度,IE9下可以放12个字,可是到了IE6下只能放10个字,这个兼容怎么弄呀,
vaer inputs=form.getElementsByTagNmae("input");
for(var i=0;i<inputs.length;i++){
if(inputs[i].type=='text'){
var value=inputs[i].value;
if(value.replace(/^\s+/,'').replace(/\s+$/,'').length<1){
alert('为空了');
return false;
}
}
}
这样试试
<input type="text" name="a">
<input type="text" name="b">
<input type="text" name="price">
<input type="text" name="c">
<input type="radio" name="e" value="1">
<input type="radio" name="e" value="2">
<input type="checkbox" name="f" value="5">
<input type="submit" value="提交"/>
</form>
<script type="text/javascript">
function fun(){
var input=document.getElementById("ff").getElementsByTagName("input");
for(var i=0;i<input.length;i++){
var obj=input[i];
var v=obj.value.replace(/ /g,"");
obj.value=v;
if(obj.type=="text"){
if(v==""){
alert("不能为空!");
obj.focus();
return false;
}else if(isNaN(v)){
alert("请输入数字!");
obj.focus();
return false;
}else if(v<0){
alert("请输入大于0的数!");
obj.focus();
return false;
}else{
if(obj.name=="price"){
if(!/^\d+\.\d+$/.test(v)){
alert("价格请输入浮点数!");
obj.focus();
return false;
}
}else{
if(v.indexOf(".")!=-1){
alert("请输入整数!");
obj.focus();
return false;
}
}
}
}
}
}
</script>
谢谢。但还请您稍微再加点注释。并改为,"price"可以为整数,也可以为浮点数,而不是必须带小数点的浮点数。谢谢
<input type="text" name="a">
<input type="text" name="b">
<input type="text" name="price">
<input type="text" name="c">
<input type="radio" name="e" value="1">
<input type="radio" name="e" value="2">
<input type="checkbox" name="f" value="5">
<input type="submit" value="提交"/>
</form>
<script type="text/javascript">
function fun(){
var input=document.getElementById("ff").getElementsByTagName("input");
//获取到表单内的所有input
for(var i=0;i<input.length;i++){
//循环所有input
var obj=input[i]; //获取其中一个input
if(obj.type=="text"){
//如果是文本框,也就是需要判断的
var v=obj.value.replace(/ /g,"");//替换所有空格后的值,并保存备后面使用
obj.value=v;//把替换空格后的值赋到文本框里,达到禁止输入空格作用
if(v==""){
alert("不能为空!");
obj.focus();
return false;
}else if(isNaN(v)){
alert("请输入数字!");
obj.focus();
return false;
}else if(v<0){
alert("请输入大于0的数!");
obj.focus();
return false;
}else if(obj.name!="price"){
//除price外,如果数字含有“.”就提示错误
if(v.indexOf(".")!=-1){
alert("请输入整数!");
obj.focus();
return false;
}
}
}
}
}
</script>