0

我无法成功地将 JSON 对象作为参数传递,我得到一个未捕获的 referenceError..有什么想法吗?

$.getJSON('./getMe.php', function(data){
    $.each(data, function(key, pack){
        var id = key.toLowerCase().replace(" ", "_");
        $('#breadcrumbs').append("&nbsp;&nbsp;<span id='" + id + " 'onclick='DoSomething(id, pack);'>" + key + "</span>&nbsp;&nbsp;&nbsp;");
    });

    $('#breadcrumbs').append('</br></br>'); })
    .success(function(){
        $('#loader').hide();
});

function DoSomething(id, pack){
    $.each(pack, function(stage, items){
        alert(stage);
    });
    $('#packages').html('&rarr;&nbsp;&nbsp;' + id);
}

我试图传递packDoSomething()

4

2 回答 2

3

这是一个您可能会发现有用的示例http://momotaroblogger.blogspot.co.nz/2012/11/webapi.html

于 2012-11-18T18:03:25.257 回答
0

您将无法将它传递给这样的变量,这就是您收到参考错误的原因。这是您可以执行的操作:

data = [{test: "test", hi: "hi!"}]

$.each(data, function(key, pack){
    var id = key,
        clickLink = $('<span>' + key + '</span>')
             .attr({id: id})
             .click(function() { doSomething(id, pack);});

    $('#breadcrumbs').append(clickLink);
});

var doSomething = function(id, pack) {
    alert(pack);
}
于 2012-11-18T03:35:19.203 回答