
javascript跳转页面失败原因分析
在编写javascript代码时,遇到跳转页面失败的问题。代码如下:
$('#confirm').on('click', function() {
var pre_code = $("#pre_code").val();
if (pre_code != "") {
if (!isnum(pre_code)) {
alert(pre_code + "请填写6位数字");
$("#pre_code").focus();
} else if (pre_code.length != 6) {
alert(pre_code + "预存编码为6位数字");
$("#pre_code").focus();
}
return;
} else {
alert(pre_code + "请填写6位数字预存编码");
$("#pre_code").focus();
return;
}
$("#userform").attr("action", "<%=path%> /preinfo/updatepre.");
$("#userform").submit();
}); 经过分析,导致页面跳转失败的原因是代码中第一个return语句。当pre_code不为空字符串时,不论其是否是数字或6位数字,都会立即返回,不再执行后面的代码。因此,$("#userform").submit();语句无法执行,导致页面跳转失败。
解决方案
立即学习“Java免费学习笔记(深入)”;
将代码中的第一个return语句删除或修改为continue;即可解决问题。修改后的代码如下:
$('#confirm').on('click', function() {
var pre_code = $("#pre_code").val();
if (pre_code != "") {
if (!isNum(pre_code)) {
alert(pre_code + "请填写6位数字");
$("#pre_code").focus();
} else if (pre_code.length != 6) {
alert(pre_code + "预存编码为6位数字");
$("#pre_code").focus();
}
continue;
} else {
alert(pre_code + "请填写6位数字预存编码");
$("#pre_code").focus();
return;
}
$("#userForm").attr("action", "<%=path%> /preInfo/updatePre.");
$("#userForm").submit();
});










