2012-11-18 70 views
0

我無法成功傳遞一個JSON對象作爲參數,我得到一個uncaught referenceError..any想法?麻煩傳遞Json對象作爲參數

$.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()

+0

你不及格'pack'作爲變量的例子。通過它就像你通過'跨度'的'id'' – Jashwant

+0

但是,這樣做會嘗試輸出變量作爲文本,而不是作爲JSON對象。 –

+0

我也試過,它也沒有工作.. – user616

回答

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); 
} 
+0

完美!非常感謝你 – user616