验证后提交Javascript表单
这个脚本的主要功能是:在未选中收音机复选框时发出警报。但是,如果选择了所有按钮,我需要它来提交表单…这就是我挂断的地方。现在,如果选择了所有字段和按钮,那么我仍然会收到一个带有var alertMsg的警报。有什么想法吗验证后提交Javascript表单,javascript,html,validation,Javascript,Html,Validation,这个脚本的主要功能是:在未选中收音机复选框时发出警报。但是,如果选择了所有按钮,我需要它来提交表单…这就是我挂断的地方。现在,如果选择了所有字段和按钮,那么我仍然会收到一个带有var alertMsg的警报。有什么想法吗 function submitform() { var sizeChoice = "" var size = document.store.on1.length var fontChoice = "" var len = document.sto
function submitform() {
var sizeChoice = ""
var size = document.store.on1.length
var fontChoice = ""
var len = document.store.on2.length
var materialChoice = ""
var material = document.store.on3.length
var treatmentChoice = ""
var treatment = document.store.on4.length
var a = document.forms["store"]["item_name"].value;
var alertMsg = "Please Choose a:"
for(i = 0; i < size; i++) {
if(document.store.on1[i].checked) {
sizeChoice = document.store.on1[i].value
}
}
for(i = 0; i < len; i++) {
if(document.store.on2[i].checked) {
fontChoice = document.store.on2[i].value
}
}
for(i = 0; i < material; i++) {
if(document.store.on3[i].checked) {
materialChoice = document.store.on3[i].value
}
}
for(i = 0; i < treatment; i++) {
if(document.store.on4[i].checked) {
treatmentChoice = document.store.on4[i].value
}
}
if(a == null || a == "") alertMsg += "\n" + "Name" + "\n";
if(sizeChoice == "") {
alertMsg += "Size" + "\n"
}
if(fontChoice == "") {
alertMsg += "Font" + "\n"
}
if(materialChoice == "") {
alertMsg += "Material" + "\n"
}
if(treatmentChoice == "") {
alertMsg += "Treatment" + "\n"
} {
alert(alertMsg)
};
return false;
document.forms["form"].submit();
};
函数submitform(){
var sizeChoice=“”
变量大小=document.store.on1.length
var fontChoice=“”
var len=document.store.on2.length
var materialChoice=“”
var物料=document.store.on3.length
var treatmentChoice=“”
var处理=document.store.on4.length
var a=文件.表格[“存储”][“项目名称”].值;
var alertMsg=“请选择一个:”
对于(i=0;i
并请添加代码>到每个语句
并请添加代码>到每个语句。在提交表单之前,您有一个返回。这可能是问题的一部分
此外,您在最终if语句中缺少一个else。在表单提交之前,您有一个返回。这可能是问题的一部分
另外,在最后的if语句中缺少else。在表单提交行之前返回,因此它将永远不会被调用 在表单提交行之前返回,因此它将永远不会被调用 无论验证结果如何,都返回false。将代码结尾更改为:
if(treatmentChoice == "") {
alertMsg += "Treatment" + "\n"
} {
alert(alertMsg)
};
return false;
document.forms["form"].submit();
致:
长度检查检查alertMsg的最终值长度与您最初设置的长度相对应。无论验证结果如何,您都返回false。将代码结尾更改为:
if(treatmentChoice == "") {
alertMsg += "Treatment" + "\n"
} {
alert(alertMsg)
};
return false;
document.forms["form"].submit();
致:
长度检查检查alertMsg的最终值长度与您最初设置的长度相对应。alertMsg以“请选择a:”开头,那么它什么时候会计算为false?xdazz,我不清楚这有什么帮助。你能澄清一下吗?(除了分号;)agree 100%)alertMsg的开头是“请选择a:”,那么它什么时候会计算为false?xdazz,我不清楚这有什么帮助。你能澄清一下吗?(除了分号;)agree 100%)您在最后一个if
语句下面有一个语法错误,看起来像是一个额外的括号。另外,为了让您知道i
是全局的,您可能想在某个地方定义它。在最后一个if
语句下面出现了语法错误,看起来像是一个额外的括号。另外,如果您知道i
是全局性的,您可能需要在某个地方定义它。+1返回语句阻止它后面的任何其他代码运行。+1返回语句阻止它后面的任何其他代码运行。
if(treatmentChoice == "") {
alertMsg += "Treatment" + "\n"
}
if(alertMsg.length > 16) {
alert(alertMsg);
return false;
} else {
document.forms["form"].submit();
}