2012-08-01 29 views
0

我做了以下的jQuery電話:getJSON() - 如何刪除數據參數前面的AND-SIGN?

$.getJSON(
"http://localhost:9000/user?name=", 
"test", 
function(data) { 
alert(data.aaData[0]);} 
); 

,但它不工作,因爲數據參數「測試」將在實際調用「&測試」(至少這就是螢火蟲告訴我) 。

我是一個JavaScript和jQuery的初學者,任何人都可以告訴我如何刪除數據參數前面的& -sign? 因此實際的呼叫http://localhost:9000/user?name=data而不是http://localhost:9000/user?name=&data

回答

2

你可以傳遞數據作爲對象,像這樣:

$.getJSON(
    "http://localhost:9000/user", 
    { name: "test" }, 
    function(data) { 
     alert(data.aaData[0]); 
    } 
); 

的數據對象將被轉換爲字符串和之前URL編碼它被添加到URL中。從jQuery documentation of .getJSON()

如果數據參數的值是一個對象(MAP),它被轉換 爲字符串和URL編碼之前它被附加到URL。

+0

真棒,它的作品!非常感謝你:) – ctitze 2012-08-01 19:15:15

+0

@ctitze很高興幫助! – 2012-08-01 19:17:00

2

你必須設置get變量以正確的方式發送:

$.getJSON("http://localhost:9000/user", "name=test", function(data) { 
    alert(data.aaData[0]); 
}); 
+0

這也適用,謝謝:) – ctitze 2012-08-01 19:16:52

+0

@ctitze沒問題^ _ ^ – Neal 2012-08-01 19:18:11