在线等,哪位好心人帮助一下!!JS代码有什么问题?每次不验证就提交了。功能是检查表单中的列表非空
functionCheckForm(frm){for(vari=0;i<document.frm.elements.length;i++)if(document.frm....
function CheckForm(frm)
{
for(var i=0;i<document.frm.elements.length;i++)
if(document.frm.elements[i].options.value=="0")
{
alert('还有没完成的题目,请完成后继续');
document.frm.elements[i].focus();
return false;
}
} 展开
{
for(var i=0;i<document.frm.elements.length;i++)
if(document.frm.elements[i].options.value=="0")
{
alert('还有没完成的题目,请完成后继续');
document.frm.elements[i].focus();
return false;
}
} 展开
2个回答
展开全部
你确定你的document.frm.elements[i].options.value 的初始值是0 么?如果是空的话 也会提交的。
更多追问追答
追问
请选择
1
2
3
4
5
6
这个是我每个列表的代码。因为太多了,想用循环。
追答
function CheckForm(frm)
{
for(var i=0;i<document.frm.elements.length;i++)
if(document.frm.elements[i].options.value=="0")
{
alert('还有没完成的题目,请完成后继续');
document.frm.elements[i].focus();
return false;
}else{
alert(document.frm.elements[i].options.value);
}
}
你这样弹出值来看看是什么,你就知道你哪里错了嘛
展开全部
首先,如果你的frm是传入的对象的话,就没必要在代码中使用document.frm,直接使用frm就可以了,如果不传入这个对象,就不要在函数参数列表中声明它,这样会引起二义性.
然后你可以试试用一个链接或是按钮(非提交按钮)来触发这个函数,这样如果脚本执行错误,你将有机会看到,如果用在onsubmit事件中,函数出错后将导致表单提交,你就没机会看到脚本的错误信息了.
你可以根据脚本错误信息进一步排查错误原因.
然后你可以试试用一个链接或是按钮(非提交按钮)来触发这个函数,这样如果脚本执行错误,你将有机会看到,如果用在onsubmit事件中,函数出错后将导致表单提交,你就没机会看到脚本的错误信息了.
你可以根据脚本错误信息进一步排查错误原因.
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询