jsp验证多个单选表单是否都选,没有选择的提示但前未表单,急! jsp验证多个单选表单是否都选,没有选择的提示但前未表单 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 就是啊,还是jsp的,什么意思啊 <form action="" name="form1" method="post"><input type="text" name="aaa"><input type="radio" name="info_type" value="A"> B <input type="radio" name="info_type" value="B"> C <input type="radio" name="info_type" value="C"> <input type="submit" name="button" id="button" value="提交" onClick="return aa()"></form><script language="javascript">function aa(){if(form1.aaa.value==""){alert("对不起,请填写价格!"); return false;}var flag = false; if(form1.info_type != null){ var msglen=form1.info_type.length; for(i=0;i<msglen;i++){ if(form1.info_type[i].checked==true){ flag = true; } } } if (flag == false) { alert("对不起,请选择") return false; }}</script>你是不是要这样的效果啊 不好意思没写清楚,现在做一个调查表,jsp验证表单是否有未选择的内容,如果有未选择的一起提示,不想一个一个提示出来!之前用了很笨的方法,在ie里可以实现,在ff里实行不了! 我还是把代码贴给大家,高手帮忙改一下,能让它在ff里实现也行!一下是jsp文件里的内容var Page_ValidationVer = "125";var Page_IsValid = true;var Page_BlockSubmit = false;function ValidatorUpdateDisplay(val) { if (typeof(val.display) == "string") { if (val.display == "None") { return; } if (val.display == "Dynamic") { val.style.display = val.isvalid ? "none" : "inline"; return; } } val.style.visibility = val.isvalid ? "hidden" : "visible";}function ValidatorUpdateIsValid() { var i; for (i = 0; i < Page_Validators.length; i++) { if (!Page_Validators[i].isvalid) { Page_IsValid = false; return; } } Page_IsValid = true;}function ValidatorHookupControlID(controlID, val) { if (typeof(controlID) != "string") { return; } var ctrl = document.all[controlID]; if (typeof(ctrl) != "undefined") { ValidatorHookupControl(ctrl, val); } else { val.isvalid = true; val.enabled = false; }}function ValidatorHookupControl(control, val) { if (typeof(control.tagName) == "undefined" && typeof(control.length) == "number") { var i; for (i = 0; i < control.length; i++) { var inner = control[i]; if (typeof(inner.value) == "string") { ValidatorHookupControl(inner, val); } } return; } else if (control.tagName != "INPUT" && control.tagName != "TEXTAREA" && control.tagName != "SELECT") { var i; for (i = 0; i < control.children.length; i++) { ValidatorHookupControl(control.children[i], val); } return; } else { if (typeof(control.Validators) == "undefined") { control.Validators = new Array; var ev; if (control.type == "radio") { ev = control.onclick; } else { ev = control.onchange; } if (typeof(ev) == "function" ) { ev = ev.toString(); ev = ev.substring(ev.indexOf("{") + 1, ev.lastIndexOf("}")); } else { ev = ""; } var func = new Function("ValidatorOnChange(); " + ev); if (control.type == "radio") { control.onclick = func; } else { control.onchange = func; } } control.Validators[control.Validators.length] = val; } } function ValidatorGetValue(id) { var control; control = document.all[id]; if (typeof(control.value) == "string") { return control.value; } if (typeof(control.tagName) == "undefined" && typeof(control.length) == "number") { var j; for (j=0; j < control.length; j++) { var inner = control[j]; if (typeof(inner.value) == "string" && (inner.type != "radio" || inner.status == true)) { return inner.value; } } } else { return ValidatorGetValueRecursive(control); } return "";}function ValidatorGetValueRecursive(control){ if (typeof(control.value) == "string" && (control.type != "radio" || control.status == true)) { return control.value; } var i, val; for (i = 0; i<control.children.length; i++) { val = ValidatorGetValueRecursive(control.children[i]); if (val != "") return val; } return "";}function Page_ClientValidate() { var i; for (i = 0; i < Page_Validators.length; i++) { ValidatorValidate(Page_Validators[i]); } ValidatorUpdateIsValid(); ValidationSummaryOnSubmit(); Page_BlockSubmit = !Page_IsValid; return Page_IsValid;}function ValidatorCommonOnSubmit() { var result = !Page_BlockSubmit; Page_BlockSubmit = false; event.returnValue = result; return result;}function ValidatorEnable(val, enable) { val.enabled = (enable != false); ValidatorValidate(val); ValidatorUpdateIsValid();}function ValidatorOnChange() { var vals = event.srcElement.Validators; var i; for (i = 0; i < vals.length; i++) { ValidatorValidate(vals[i]); } ValidatorUpdateIsValid(); }function ValidatorValidate(val) { val.isvalid = true; if (val.enabled != false) { if (typeof(val.evaluationfunction) == "function") { val.isvalid = val.evaluationfunction(val); } } ValidatorUpdateDisplay(val);}function ValidatorOnLoad() { if (typeof(Page_Validators) == "undefined") return; var i, val; for (i = 0; i < Page_Validators.length; i++) { val = Page_Validators[i]; if (typeof(val.evaluationfunction) == "string") { eval("val.evaluationfunction = " + val.evaluationfunction + ";"); } if (typeof(val.isvalid) == "string") { if (val.isvalid == "False") { val.isvalid = false; Page_IsValid = false; } else { val.isvalid = true; } } else { val.isvalid = true; } if (typeof(val.enabled) == "string") { val.enabled = (val.enabled != "False"); } ValidatorHookupControlID(val.controltovalidate, val); ValidatorHookupControlID(val.controlhookup, val); } Page_ValidationActive = true;}function ValidatorConvert(op, dataType, val) { function GetFullYear(year) { return (year + parseInt(val.century)) - ((year < val.cutoffyear) ? 0 : 100); } var num, cleanInput, m, exp; if (dataType == "Integer") { exp = /^\s*[-\+]?\d+\s*$/; if (op.match(exp) == null) return null; num = parseInt(op, 10); return (isNaN(num) ? null : num); } else if(dataType == "Double") { exp = new RegExp("^\\s*([-\\+])?(\\d+)?(\\" + val.decimalchar + "(\\d+))?\\s*$"); m = op.match(exp); if (m == null) return null; cleanInput = m[1] + (m[2].length>0 ? m[2] : "0") + "." + m[4]; num = parseFloat(cleanInput); return (isNaN(num) ? null : num); } else if (dataType == "Currency") { exp = new RegExp("^\\s*([-\\+])?(((\\d+)\\" + val.groupchar + ")*)(\\d+)" + ((val.digits > 0) ? "(\\" + val.decimalchar + "(\\d{1," + val.digits + "}))?" : "") + "\\s*$"); m = op.match(exp); if (m == null) return null; var intermed = m[2] + m[5] ; cleanInput = m[1] + intermed.replace(new RegExp("(\\" + val.groupchar + ")", "g"), "") + ((val.digits > 0) ? "." + m[7] : 0); num = parseFloat(cleanInput); return (isNaN(num) ? null : num); } else if (dataType == "Date") { var yearFirstExp = new RegExp("^\\s*((\\d{4})|(\\d{2}))([-/]|\\. ?)(\\d{1,2})\\4(\\d{1,2})\\s*$"); m = op.match(yearFirstExp); var day, month, year; if (m != null && (m[2].length == 4 || val.dateorder == "ymd")) { day = m[6]; month = m[5]; year = (m[2].length == 4) ? m[2] : GetFullYear(parseInt(m[3], 10)) } else { if (val.dateorder == "ymd"){ return null; } var yearLastExp = new RegExp("^\\s*(\\d{1,2})([-/]|\\. ?)(\\d{1,2})\\2((\\d{4})|(\\d{2}))\\s*$"); m = op.match(yearLastExp); if (m == null) { return null; } if (val.dateorder == "mdy") { day = m[3]; month = m[1]; } else { day = m[1]; month = m[3]; } year = (m[5].length == 4) ? m[5] : GetFullYear(parseInt(m[6], 10)) } month -= 1; var date = new Date(year, month, day); return (typeof(date) == "object" && year == date.getFullYear() && month == date.getMonth() && day == date.getDate()) ? date.valueOf() : null; } else { return op.toString(); }} 为什么页面一操作,页面嵌入的media player就停止播放呢? JS跨协议调用(http,https)方法 javascript中 window.location应用问题? 关于div层 JS脚本如何执行 为何JS更改不了值ID的值?? 如何用HTML或JAVASCRIPT写出点击某个链接,弹出一个小的对话框? 关闭网页时候,怎么让它自动执行我的一段代码? 看书,看的头大! 关于ActiveXObject的问题 JavaScript中的onmouseover事件 getLocName是什么意思呀!请高手指教
<input type="text" name="aaa">
<input type="radio" name="info_type" value="A">
B
<input type="radio" name="info_type" value="B">
C
<input type="radio" name="info_type" value="C">
<input type="submit" name="button" id="button" value="提交" onClick="return aa()">
</form><script language="javascript">
function aa()
{
if(form1.aaa.value=="")
{
alert("对不起,请填写价格!");
return false;
}
var flag = false;
if(form1.info_type != null){
var msglen=form1.info_type.length;
for(i=0;i<msglen;i++){
if(form1.info_type[i].checked==true){
flag = true;
}
}
}
if (flag == false)
{
alert("对不起,请选择")
return false;
}
}</script>你是不是要这样的效果啊
现在做一个调查表,jsp验证表单是否有未选择的内容,如果有未选择的一起提示,不想一个一个提示出来!
之前用了很笨的方法,在ie里可以实现,在ff里实行不了!
一下是jsp文件里的内容var Page_ValidationVer = "125";
var Page_IsValid = true;
var Page_BlockSubmit = false;
function ValidatorUpdateDisplay(val) {
if (typeof(val.display) == "string") {
if (val.display == "None") {
return;
}
if (val.display == "Dynamic") {
val.style.display = val.isvalid ? "none" : "inline";
return;
}
}
val.style.visibility = val.isvalid ? "hidden" : "visible";
}
function ValidatorUpdateIsValid() {
var i;
for (i = 0; i < Page_Validators.length; i++) {
if (!Page_Validators[i].isvalid) {
Page_IsValid = false;
return;
}
}
Page_IsValid = true;
}
function ValidatorHookupControlID(controlID, val) {
if (typeof(controlID) != "string") {
return;
}
var ctrl = document.all[controlID];
if (typeof(ctrl) != "undefined") {
ValidatorHookupControl(ctrl, val);
}
else {
val.isvalid = true;
val.enabled = false;
}
}
function ValidatorHookupControl(control, val) {
if (typeof(control.tagName) == "undefined" && typeof(control.length) == "number") {
var i;
for (i = 0; i < control.length; i++) {
var inner = control[i];
if (typeof(inner.value) == "string") {
ValidatorHookupControl(inner, val);
}
}
return;
}
else if (control.tagName != "INPUT" && control.tagName != "TEXTAREA" && control.tagName != "SELECT") {
var i;
for (i = 0; i < control.children.length; i++) {
ValidatorHookupControl(control.children[i], val);
}
return;
}
else {
if (typeof(control.Validators) == "undefined") {
control.Validators = new Array;
var ev;
if (control.type == "radio") {
ev = control.onclick;
} else {
ev = control.onchange;
}
if (typeof(ev) == "function" ) {
ev = ev.toString();
ev = ev.substring(ev.indexOf("{") + 1, ev.lastIndexOf("}"));
}
else {
ev = "";
}
var func = new Function("ValidatorOnChange(); " + ev);
if (control.type == "radio") {
control.onclick = func;
} else {
control.onchange = func;
}
}
control.Validators[control.Validators.length] = val;
}
}
var control;
control = document.all[id];
if (typeof(control.value) == "string") {
return control.value;
}
if (typeof(control.tagName) == "undefined" && typeof(control.length) == "number") {
var j;
for (j=0; j < control.length; j++) {
var inner = control[j];
if (typeof(inner.value) == "string" && (inner.type != "radio" || inner.status == true)) {
return inner.value;
}
}
}
else {
return ValidatorGetValueRecursive(control);
}
return "";
}
function ValidatorGetValueRecursive(control)
{
if (typeof(control.value) == "string" && (control.type != "radio" || control.status == true)) {
return control.value;
}
var i, val;
for (i = 0; i<control.children.length; i++) {
val = ValidatorGetValueRecursive(control.children[i]);
if (val != "") return val;
}
return "";
}
function Page_ClientValidate() {
var i;
for (i = 0; i < Page_Validators.length; i++) {
ValidatorValidate(Page_Validators[i]);
}
ValidatorUpdateIsValid();
ValidationSummaryOnSubmit();
Page_BlockSubmit = !Page_IsValid;
return Page_IsValid;
}
function ValidatorCommonOnSubmit() {
var result = !Page_BlockSubmit;
Page_BlockSubmit = false;
event.returnValue = result;
return result;
}
function ValidatorEnable(val, enable) {
val.enabled = (enable != false);
ValidatorValidate(val);
ValidatorUpdateIsValid();
}
function ValidatorOnChange() {
var vals = event.srcElement.Validators;
var i;
for (i = 0; i < vals.length; i++) {
ValidatorValidate(vals[i]);
}
ValidatorUpdateIsValid();
}
function ValidatorValidate(val) {
val.isvalid = true;
if (val.enabled != false) {
if (typeof(val.evaluationfunction) == "function") {
val.isvalid = val.evaluationfunction(val);
}
}
ValidatorUpdateDisplay(val);
}
function ValidatorOnLoad() {
if (typeof(Page_Validators) == "undefined")
return;
var i, val;
for (i = 0; i < Page_Validators.length; i++) {
val = Page_Validators[i];
if (typeof(val.evaluationfunction) == "string") {
eval("val.evaluationfunction = " + val.evaluationfunction + ";");
}
if (typeof(val.isvalid) == "string") {
if (val.isvalid == "False") {
val.isvalid = false;
Page_IsValid = false;
}
else {
val.isvalid = true;
}
} else {
val.isvalid = true;
}
if (typeof(val.enabled) == "string") {
val.enabled = (val.enabled != "False");
}
ValidatorHookupControlID(val.controltovalidate, val);
ValidatorHookupControlID(val.controlhookup, val);
}
Page_ValidationActive = true;
}
function ValidatorConvert(op, dataType, val) {
function GetFullYear(year) {
return (year + parseInt(val.century)) - ((year < val.cutoffyear) ? 0 : 100);
}
var num, cleanInput, m, exp;
if (dataType == "Integer") {
exp = /^\s*[-\+]?\d+\s*$/;
if (op.match(exp) == null)
return null;
num = parseInt(op, 10);
return (isNaN(num) ? null : num);
}
else if(dataType == "Double") {
exp = new RegExp("^\\s*([-\\+])?(\\d+)?(\\" + val.decimalchar + "(\\d+))?\\s*$");
m = op.match(exp);
if (m == null)
return null;
cleanInput = m[1] + (m[2].length>0 ? m[2] : "0") + "." + m[4];
num = parseFloat(cleanInput);
return (isNaN(num) ? null : num);
}
else if (dataType == "Currency") {
exp = new RegExp("^\\s*([-\\+])?(((\\d+)\\" + val.groupchar + ")*)(\\d+)"
+ ((val.digits > 0) ? "(\\" + val.decimalchar + "(\\d{1," + val.digits + "}))?" : "")
+ "\\s*$");
m = op.match(exp);
if (m == null)
return null;
var intermed = m[2] + m[5] ;
cleanInput = m[1] + intermed.replace(new RegExp("(\\" + val.groupchar + ")", "g"), "") + ((val.digits > 0) ? "." + m[7] : 0);
num = parseFloat(cleanInput);
return (isNaN(num) ? null : num);
}
else if (dataType == "Date") {
var yearFirstExp = new RegExp("^\\s*((\\d{4})|(\\d{2}))([-/]|\\. ?)(\\d{1,2})\\4(\\d{1,2})\\s*$");
m = op.match(yearFirstExp);
var day, month, year;
if (m != null && (m[2].length == 4 || val.dateorder == "ymd")) {
day = m[6];
month = m[5];
year = (m[2].length == 4) ? m[2] : GetFullYear(parseInt(m[3], 10))
}
else {
if (val.dateorder == "ymd"){
return null;
}
var yearLastExp = new RegExp("^\\s*(\\d{1,2})([-/]|\\. ?)(\\d{1,2})\\2((\\d{4})|(\\d{2}))\\s*$");
m = op.match(yearLastExp);
if (m == null) {
return null;
}
if (val.dateorder == "mdy") {
day = m[3];
month = m[1];
}
else {
day = m[1];
month = m[3];
}
year = (m[5].length == 4) ? m[5] : GetFullYear(parseInt(m[6], 10))
}
month -= 1;
var date = new Date(year, month, day);
return (typeof(date) == "object" && year == date.getFullYear() && month == date.getMonth() && day == date.getDate()) ? date.valueOf() : null;
}
else {
return op.toString();
}
}