【问题标题】:javascript code error syntaxjavascript代码错误语法
【发布时间】:2011-04-08 01:55:22
【问题描述】:

我认为我在这段代码中有一个 sintax 错误

<script type="text/javascript">
    $(document).ready(function() {
        $("#send").submit(function() {
            $.post("validation.php", {
                nameRegist: $('#nameRegist').val(),
                emailRegist: $('#emailRegist').val(),
                myPasswordRegist: $('#myPasswordRegist').val(),
                pass2Regist: $('#pass2Regist').val()

            }, function(data) {
                if (data == 'nomeInvalido') {
                    $("#msgbox1").fadeTo(200, 0.1, function() {
                        $(this).html('Nome inválido').addClass('messageboxerror1').fadeTo(900, 1);
                    });
                } else if (data != 'emailValido' || data != 'emailRegistado') {
                    $("#msgbox1").fadeTo(200, 0.1, function() {
                        $(this).html('Email inválido').addClass('messageboxerror1').fadeTo(900, 1);
                    });
                } else if (data == 'passInvalida') {
                    $("#msgbox1").fadeTo(200, 0.1, function() {
                        $(this).html('Pass inválida').addClass('messageboxerror1').fadeTo(900, 1);
                    });
                } else if (data == 'dadosInvalidos') {
                    $("#msgbox1").fadeTo(200, 0.1, function() {
                        $(this).html('Dados inválidos').addClass('messageboxerror1').fadeTo(900, 1);
                    });
            }
            } else {
                $("#msgbox1").fadeTo(200, 0.1, function() {
                    $(this).html('Registo Efectuado.....').addClass('messageboxok1').fadeTo(900, 1, function() {
                        document.location = 'emprego.php';
                    });
                }
            return false;
            });
        });
</script>

我完全迷失在引号中

如果有人可以帮助我,我真的很感激

谢谢

【问题讨论】:

  • 您是否收到错误消息?
  • 不,但我在这个在线工具中检查并给我错误javascriptlint.com/online_lint.php 并且脚本没有按照预期执行,所以我怀疑这是一个语法问题
  • “我想?”什么让你怀疑?
  • 我有 99% 的把握在引号和括号中遇到问题
  • 当您通过该 javascript 验证站点运行代码时,您看到了哪些错误?我使用 jslint (jslint.com),它提供了描述性的、有用的错误消息。我刚才看到你说你相信你可能有一些不匹配的引号/括号。您是否正在使用可以帮助您的文本编辑器?

标签: javascript jquery ajax syntax


【解决方案1】:

您有很多问题,请参阅下面的 cmets:

$(document).ready(function() {
    $("#send").submit(function() {
        $.post("validation.php", {
            nameRegist: $('#nameRegist').val(),
            emailRegist: $('#emailRegist').val(),
            myPasswordRegist: $('#myPasswordRegist').val(),
            pass2Regist: $('#pass2Regist').val()

        }, function(data) {
            if (data == 'nomeInvalido') {
                $("#msgbox1").fadeTo(200, 0.1, function() {
                    $(this).html('Nome inválido').addClass('messageboxerror1').fadeTo(900, 1);
                });
            } else if (data != 'emailValido' || data != 'emailRegistado') {
                $("#msgbox1").fadeTo(200, 0.1, function() {
                    $(this).html('Email inválido').addClass('messageboxerror1').fadeTo(900, 1);
                });
            } else if (data == 'passInvalida') {
                $("#msgbox1").fadeTo(200, 0.1, function() {
                    $(this).html('Pass inválida').addClass('messageboxerror1').fadeTo(900, 1);
                });
            } else if (data == 'dadosInvalidos') {
                $("#msgbox1").fadeTo(200, 0.1, function() {
                    $(this).html('Dados inválidos').addClass('messageboxerror1').fadeTo(900, 1);
                });
    /////// } extra, remove
            } else {
                $("#msgbox1").fadeTo(200, 0.1, function() {
                    $(this).html('Registo Efectuado.....').addClass('messageboxok1').fadeTo(900, 1, function() {
                        document.location = 'emprego.php';
                    });
                }); /////// missing ");"
            }
            return false;
        });
    });
}); ////// missing "});"

【讨论】:

  • 如果最后一个else是多余的,你应该把最后一个else if改为一个else。
  • @vol7ron:else 不是多余的,而是关闭括号。
  • 哦 .. 我喜欢做内部 cmets 像 /* } // 这是额外的 */ - 这是有道理的 :) 哈哈
【解决方案2】:

你在第 26 行有一个额外的右大括号,这个:

}
} else {

应该只是

} else {

然后您需要将} else { 块再缩进一步以使内容保持一致。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-10-03
    • 1970-01-01
    • 2013-11-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-30
    相关资源
    最近更新 更多