if (selects[i].options[0].selected)
肯定是i超出了select集合的范围,因为你用的是所有input的length
肯定是i超出了select集合的范围,因为你用的是所有input的length
解决方案 »
- 关于<!CDATA[[ ]]>中的<!是什么意思
- 关于click以后得冒泡反应的问题,如何能控制click以后只在某一个div里面生效,不会传递到其他的div里面去。
- 求教各位高手一个导航条问题!!!急!!
- 5555555听大家的选择了Fckediter啊,可是用Fckediter以后就开始郁闷了啊!跪求啊!55
- fullcalendar显示
- js 相同id值的button按钮,上传文件至服务器
- 在javascript中用split()函数
- javascript与数据压缩
- 请问VB中的ABS函数在JS中用什么代替?
- 如何控制javascript中的字符集???????
- 刚刚开始学习js,大家都用什么工具写js啊?介绍一下吧!:)
- 在IE中如何使F5失效?
document.getElementsByName("s_elemt").length //得到这一数组的长度
document.getElementsByName("s_elemt")[i] //操作第i+1个s_elemt元素
if ((inputs[i].type).toLowerCase()=="text"))
if (inputs[i].value.replace(/^\s+|\s+$/g,"").length ==0){
inputs[i].focus();
alert("不能为空!\n请输入对应的内容!");
return false;
}
else
if ((inputs[i].name==s_elemt) && (!isNaN(inputs[i].value)) {
inputs[i].focus();
alert("请输入数字!");
return false;
}
我没调试,大概就这意思...
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
</HEAD><BODY><form name=form1>
<select name="select1">
<option></option>
<option>2</option>
<option>3</option>
<option>4</option>
<option>5</option>
<option>6</option>
</select>
<select name="select2">
<option></option>
<option>2</option>
<option>3</option>
<option>4</option>
<option>5</option>
</select><BR>
<INPUT type="text" NAME="text1"><BR>
<INPUT type="text" NAME="text1"><BR>
text2<INPUT TYPE="TEXT" NAME="text2"><BR>
<INPUT type="button" value=hello onclick="checkIt('form1','text1')">
</form><SCRIPT LANGUAGE="JavaScript">
<!--
function returnSelected(e){
for(j=1;j<e.options.length;j++) if(e.options[j].selected)return true;
return false;
}function checkIt(form_name,s_elemt){
var selects=document.all.tags("select");
for(i=0;i<selects.length;i++)
if(!returnSelected(selects[i])){
selects[i].focus();
return alert("请选择对应的项目!")
}
var inputs =document.all.tags("input");// eval("document.all['"+form_name+"'].elements");
for(j=0;j<inputs.length;j++)
if(inputs[j].type=='text'&&inputs[j].value.replace(/\s*/g,'')==''){
inputs[j].focus();
return alert("不能为空!\n请输入对应的内容!");
}
}
//-->
</SCRIPT>
</BODY>
</HTML>
这是修改后的代码,可是还是判断不了数字的问题!!!
大家有兴趣再干一下!!!
function check_elements(form_name,s_elemt)
{
var i;
//var inputs = eval("document."+form_name+".elements");
var inputs=document.all.tags("input");
var selects=document.all.tags("select"); for (i=0;i<selects.length;i++)
{
if (selects[i].options[0].selected)//selects[i].selectedIndex==0
{
selects[i].focus();
alert("请选择对应的项目!");
return false;
}
}
for(i=0;i<inputs.length;i++)
{
if ((inputs[i].type).toLowerCase()=="text")
{
if (inputs[i].value.replace(/^\s+|\s+$/g,"").length ==0)
{
inputs[i].focus();
alert(" 不能为空!\n 请输入对应的内容!");
return false;
}
else if (inputs[i].name==s_elemt && !isNaN(inputs[i].value))
{
inputs[i].focus();
alert("请输入数字!");
return false;
}
}
}
eval("document."+form_name+".submit()");
}
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
</HEAD><BODY><form name=form1>
<select name="select1">
<option></option>
<option>2</option>
<option>3</option>
<option>4</option>
<option>5</option>
<option>6</option>
</select>
<select name="select2">
<option></option>
<option>2</option>
<option>3</option>
<option>4</option>
<option>5</option>
</select><BR>
<INPUT type="text" NAME="text1"><BR>
<INPUT type="text" NAME="text1"><BR>
text2<INPUT TYPE="TEXT" NAME="text2"><BR>
<INPUT type="button" value=hello onclick="checkIt('form1','text1')">
</form><SCRIPT LANGUAGE="JavaScript">
<!--
function returnSelected(e){
for(j=1;j<e.options.length;j++) if(e.options[j].selected)return true;
return false;
}function checkIt(form_name,s_elemt){
var selects=document.all.tags("select");
for(i=0;i<selects.length;i++)
if(!returnSelected(selects[i])){
selects[i].focus();
return alert("请选择对应的项目!")
}
var inputs =document.all.tags("input");// eval("document.all['"+form_name+"'].elements");
for(j=0;j<inputs.length;j++)
if(inputs[j].type=='text'){
if(inputs[j].name==s_elemt&&isNaN(inputs[i].value)) {
inputs[j].focus();
inputs[j].select();
return alert("请输入数字!");
}
if(inputs[j].value.replace(/\s*/g,'')==''){
inputs[j].focus();
return alert("不能为空!\n请输入对应的内容!");
} }
}
//-->
</SCRIPT>
</BODY>
</HTML>
{
var i;
//var inputs = eval("document."+form_name+".elements");
var inputs=document.all.tags("input");
var selects=document.all.tags("select"); for (i=0;i<selects.length;i++)
{
if (selects[i].options[0].selected)//selects[i].selectedIndex==0
{
selects[i].focus();
alert("请选择对应的项目!");
return false;
}
}
for(i=0;i<inputs.length;i++)
{
if ((inputs[i].type).toLowerCase()=="text")
{
if (inputs[i].value.replace(/^\s+|\s+$/g,"").length ==0)
{
inputs[i].focus();
alert(" 不能为空!\n 请输入对应的内容!");
return false;
}
else if (inputs[i].name.indexOf(s_elemt)!=-1 && isNaN(inputs[i].value))
{
inputs[i].focus();
alert("请输入数字!");
return false;
}
}
}
eval("document."+form_name+".submit()");
}