我使用jQuery調用頁面方法。在示例中,每一個接收使用回覆result.d
(.D)使用jquery接收頁面方法的響應
例如:
function onSuccess(msg){
alert("suc" + msg.d);
}
請指引我,什麼是.d
?
我使用jQuery調用頁面方法。在示例中,每一個接收使用回覆result.d
(.D)使用jquery接收頁面方法的響應
例如:
function onSuccess(msg){
alert("suc" + msg.d);
}
請指引我,什麼是.d
?
如果你不熟悉的「.D」 我指的是,它只是一個 安全功能,微軟在ASP.NET 3.5的加入 版本的ASP.NET AJAX。通過在父對象中封裝JSON 響應, 框架可幫助防範 particularly nasty XSS vulnerability。
欲瞭解完整的寫信頭到this post。
以及這意味着msg
是Object
並且您正在訪問的d
元素
對象可以是這樣的:
var msg = {
d: "hello",
e: "there"
}
alert(msg.d);//alerts 'hello'
alert(msg.e);//alerts 'there'
這裏假設你做一個Ajax調用。而在你的AJAX打電話給你設置dataType:'json'..
所以,假設你做了這樣的事情 - 我將使用PHP作爲示例語言......
$ var = array('d'=>「Hello」); echo json_encode($ var);
然後在你的客戶,你可以這樣做:
的onSuccess(MSG){ 警報(msg.d); //會提醒「你好」 }
在Javascript中。只是引用對象成員..
do var blah = {d:「Hello」};的console.log(blah.d);會輸出「Hello」。
「.d」是(或應該是)作爲msg接收的json對象的「屬性」。 (json)在webmethod的結尾處以JavaScript方式檢查對象(在本例中爲msg)並使用傳統「object.property」表示法查找屬性的方式序列化對象。
您的回覆數據爲JSON Object,其中包含一個名爲d
的property/key
。通常,Ajax響應以JSON格式編碼,以便可以從客戶端的JavaScript訪問它。
在asp.net中,爲了以JSON格式對響應進行編碼,您通常使用JSON.NET框架。
您從服務器收到的JSON響應包含名爲d
的密鑰/屬性,您正在通過編寫msg.d
訪問該密鑰/屬性。
通常一個JSON對象有下列結構 -
var jsonObject = {
key1: value_1,
key2: valuu_2,
.............
keyn: value_n
}
,然後您訪問以下方式鍵/屬性值 -
jsonObject.key1
這裏,value
可以是任何JavaScript數據類型,即字符串,數字,甚至其他JSON對象。
領域「d」是響應數據的屬性的名稱,我認爲這可能被命名爲「d」,引用響應的「數據」,但如果你想知道更多關於這個,你可以檢查jquery文件並尋找ajax方法。