变量在定义时在firebug中显示为undefined

时间:2011-01-18 18:59:10

标签: javascript jquery

这是我的网站http://iadprint.com/products?product=Business%20Card

当我选择数量值时,价格应显示在右上角的定价div中。 这曾经工作,但出于某种原因,今天在dom下的firebug我可以看到一些变量显示未定义。当我执行ajax调用iadprint.com/ajax.php?id=1时,数据显示正确,并且js中的变量都已定义。什么可能是错的?这里是我看到未定义的变量。

woCoating_price
woColor_price
woDesign_price
woJob_Name_price
woPDF_Proof_price
woQuantity_price
woRound_Corners_price
woTurnaround_price

1 个答案:

答案 0 :(得分:1)

我使用包含$.get()回调的完整$.ajax()来电替换了您的error:来电。

结果是您收到了解析错误,因为您的JSON响应无效。

"parsererror" "Invalid JSON: {"price":"15.00"}<br/>"

您需要摆脱<br/>标记。

如果不是这样,那么您需要提供有关如何重现问题的具体细节,以及您期望看到定义值的代码部分。


编辑:以下是我删除你的后使用的change处理程序:

$("#Quantity").change(function () {
    hash = $("#Quantity").val();
    console.log('hash',hash);

    $.ajax({
        url:"ajax.php",
        data: { id: hash },
        dataType:'json',
        success:function (out,b,c) {
            woQuantity_price = out.price;
            displayPrice();
            console.log(out,woQuantity_price,b,c);
        },
        error:function(a,b,c){
            console.log('error:',a,b,c);
        }
    });
});