JavaScript跳转页面失败,如何解决return语句导致的问题?

javascript跳转页面失败,如何解决return语句导致的问题?

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", " /preinfo/updatepre.<do>");
    $("#userform").submit();
});</do>

经过分析,导致页面跳转失败的原因是代码中第一个return语句。当pre_code不为空字符串时,不论其是否是数字或6位数字,都会立即返回,不再执行后面的代码。因此,$("#userform").submit();语句无法执行,导致页面跳转失败。

解决方案

将代码中的第一个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", " /preInfo/updatePre.<do>");
    $("#userForm").submit();
});</do>

以上就是JavaScript跳转页面失败,如何解决return语句导致的问题?的详细内容,更多请关注www.sxiaw.com其它相关文章!