Jquery代码中的错误

时间:2012-01-17 17:34:24

标签: javascript jquery

此代码不起作用,任何人都有任何建议吗?

也许我做错了什么?有人可以查看这个代码吗?那是因为我使用了jquery吗?

$(document).ready(function showCart(next) {
    var ca = document.getElementById("cartArea");
    var params = "";
    for (i = 0; i < document.clientCart.elements.length; i++) {
        param = getElemValue(document.clientCart.elements[i]);
        if (param != "") params += param + "&";
    }
    if (next) params += "Next=1";
    ca.innerHTML = postIt(params);
    makePie();
}
});

3 个答案:

答案 0 :(得分:2)

你底部有一个额外的}

所以

$(document).ready(function showCart(next) {
    var ca = document.getElementById("cartArea");
    var params = "";
    for (i = 0; i < document.clientCart.elements.length; i++) {
        param = getElemValue(document.clientCart.elements[i]);
        if (param != "") params += param + "&";
    }
    if (next) params += "Next=1";
    ca.innerHTML = postIt(params);
    makePie();
});

至少没有任何语法问题。

答案 1 :(得分:0)

应该是:

$(document).ready(function(next){
    var ca = document.getElementById("cartArea");
    var params = "";
    for (i = 0; i < document.clientCart.elements.length; i++) {
        param = getElemValue(document.clientCart.elements[i]);
        if (param != "") params += param + "&";
    }
    if (next) params += "Next=1";
    ca.innerHTML = postIt(params);
    makePie();
});

答案 2 :(得分:0)

你有一个太多的结束括号:

$(document).ready(function showCart(next) {
    var ca = document.getElementById("cartArea");
    var params = "";
    for (i = 0; i < document.clientCart.elements.length; i++) {
        param = getElemValue(document.clientCart.elements[i]);
        if (param != "") params += param + "&";
    }
    if (next) params += "Next=1";
    ca.innerHTML = postIt(params);
    makePie();
}  // <-------------- that shouldn't be there
});

此外,根据您的函数中的docs next始终为jQuery,为什么不删除它,只将jQuery引用为jQuery(或{{ 1}}如果你不在noconflict模式下)

另请注意,您可以简化

$

为:

$(document).ready(function showCart(next) {

或者抛弃不必要的$(function showCart(next) { 参数和函数表达式名称

next