参数列表后面的SyntaxError:missing) - 没有丢失)!

时间:2014-01-10 12:36:56

标签: javascript jquery

我完全失去了这段代码的错误。

以下是我在错误之前所做的事情:

$(function () {

    for(var i=0;i<15;i++){
        $("#_Q1_Q" + i + "_Q2_C").change(callbackFactory(i));
        $("#_Q1_Q" + i + "_Q2_C").change(function(n){
            return function(){
                toBus(n);
                console.log(n);
            };
        }(i));
        toBus(i);
    };

    $("#_Q0_C0").change(function(){
        noTraveller();
        console.log("Stage 1");
    };); // <--- This is where the error occurs

代码还有更多,但所有括号都按顺序排列100%。事实上,如果我注释掉下面的代码部分(发生错误的地方),那么我的脚本将完全按照预期运行,除非注释掉函数。

$("#_Q0_C0").change(function(){
    noTraveller();
    console.log("Stage 1");
};);

5 个答案:

答案 0 :(得分:7)

删除多余的;

 $("#_Q0_C0").change(function () {
     noTraveller();
     console.log("Stage 1");
 };);
  ^

答案 1 :(得分:2)

此:

$("#_Q0_C0").change(function(){
    noTraveller();
    console.log("Stage 1");
};);
 ^ //remove that semicolon 

应该是:

$("#_Q0_C0").change(function(){
    noTraveller();
    console.log("Stage 1");
});

答案 2 :(得分:1)

一个分号太多了。

在console.log之后删除行中的第一个分号。

它应该是这样的:

$("#_Q0_C0").change(function(){
  noTraveller();
  console.log("Stage 1");
}); 

答案 3 :(得分:1)

改为喜欢这个

$("#_Q0_C0").change(function(){
        noTraveller();
        console.log("Stage 1");
    }); // <--- Note here: remove `;`

答案 4 :(得分:0)

 $(function () {

for(var i=0;i<15;i++){
    $("#_Q1_Q" + i + "_Q2_C").change(callbackFactory(i));
    $("#_Q1_Q" + i + "_Q2_C").change(function(n){
        return function(){
            toBus(n);
            console.log(n);
        };
    }(i));
    toBus(i);
};
})
$("#_Q0_C0").change(function(){
    noTraveller();
    console.log("Stage 1");
});

功能未正确关闭,请检查控制台是否有错误