- HTML code
<body> <div> 1:您的性别 </div> <div> <input type="radio" name="sex" />男 <input type="radio" name="sex" />女 </div> <div> 2:您的学历 </div> <div> <input type="radio" name="level" />大专 <input type="radio" name="level" />本科 <input type="radio" name="level" />研究生 </div> <div> 3:您的爱好 </div> <div> <input type="checkbox" name="like" />吃 <input type="checkbox" name="like" />喝 <input type="checkbox" name="like" />玩 </div> <div> 4:您喜欢的食物 </div> <div> <input type="checkbox" name="food" />香蕉 <input type="checkbox" name="food" />苹果 <input type="checkbox" name="food" />大鸭梨 </div> <div> 5:你的基本信息 </div> <div> name:<input type="text" name="basicInfo"/> age:<input type="text" name="basicInfo"/> </div> <div> 6:你的个人介绍 </div> <div> <textarea name="Detail"></textarea> </div> <input type="button" id="btnSubmit" value="提交" /> </body>
以上是HTML代码,name这个属性都是动态生成的,没规律的,我如何判断每道题都是必选项呢?求围观!
------解决方案--------------------
- JScript code
<input type="button" id="btnSubmit" onclick="return check_form()" value="提交" /> <script type="text/javascript"> function check_form(){ var input=document.getElementsByTagName("input"); var arr={},id,s_name,ty; for(var i=0;i<input.length;i++){ id=input[i]; s_name=id.name; ty=id.type; if(ty=="text"){ if(id.value==""){ alert("请填写此项!"); id.focus(); return false; } }else if(ty=="checkbox"||ty=="radio"){ if(!arr[s_name]){ var l=0; var lid=document.getElementsByName(s_name); for(var n=0;n<lid.length;n++){ if(lid[n].checked){ l++; } } if(l>0){ arr[s_name]=true; }else{ alert("请务必选择一项"); id.style.border = "1px solid red";//艹ff不支持 错误时应该怎么提示需要你去处理一下 id.focus(); return false; } } } } var text=document.getElementsByTagName("textarea"); for(var n=0;n<text.length;n++){ if(text[n].value==""){ alert("请填写内容!"); text[n].focus(); return false; } } alert("可以交卷!") } </script>
------解决方案--------------------
- JScript code
<input type="button" id="btnSubmit" onclick="return check_form()" value="提交" /> <script type="text/javascript"> function check_form(){ var arr={},id,s_name,ty; try { $("input,textarea").each(function(){ ty=$(this).attr("type"); if(ty=="text"||ty==undefined){ if($(this).val()==""){ throw this; } }else if(ty=="checkbox"||ty=="radio"){ if(!arr[s_name]){ var s_name=$(this).attr("name"); if($("input[name='"+s_name+"']:checked").size()==0){ throw this; }else{ arr[s_name]=true; } } } }); }catch(e){ alert("请完成这道题!"); $(e).css("border","1px solid red");//艹ff不支持 $(e).focus(); return false; } alert("可以交卷!"); } </script>