2009-11-26 90 views
2

我在寫一個jquery接口,它需要我將幾個參數傳遞給我們的CMS。這些參數的形式爲「attribute [n]:token」,因此在一個URL中,您最終會得到「... &屬性[1]:value = hello_world ...」。不幸的是,當我嘗試使用$ .get來傳遞這些數據時,會出現相當明顯的原因。我嘗試了我能想到的方法來逃避這些角色,而且我確信我錯過了一個簡單的竅門,但我不能想出一個可行的方法。我希望這不像聽起來那麼簡單。jQuery.Get,帶特殊字符的參數

示例代碼:

$.get("/example.htm", 
{ 
    Attributes[1]:type: "option", 
    Attributes[1]:value: "large" 
}); 

提前千恩萬謝, 山姆

回答

1

您可以使用JavaScript函數是encodeURI():

var params = {}; 
params[encodeURI('Attributes[1]:type')] = 'option'; 
params[encodeURI('Attributes[1]:value')] = 'large'; 

$.get("/example.htm", params); 
+0

Lior,非常感謝。我曾嘗試encodeURI,但我懷疑我犯了一個微不足道的錯誤,然後將其視爲一項糟糕的工作。事實上,事實證明,簡單地使數組而不是傳遞內聯變量足以解決我的問題。我知道我正在密集。 再次感謝, 山姆 – 2009-11-26 23:35:48

+0

np隊友。它發生了:) – 2009-11-26 23:44:40

0

你總是可以嘗試將周圍的報價鑰匙

$.get("/example.htm", 
{ 
    "Attributes[1]:type": "option", 
    "Attributes[1]:value": "large" 
});