我使用在互联网上找到的一些教程,整理了一些jQuery AJAX代码。我是jQuery新手,想学习如何做得更好。我有一个同事,他使用很多jQuery编写了一个漂亮的Web应用程序。
我在这里最困惑的是:为什么在引用我的Web方法的响应时必须使用“ .d”,它代表什么?
// ASP.net C# code [System.Web.Services.WebMethod] public static string hello() { return ("howdy"); } // Javascript code function testMethod() { $.ajax({ type: "POST", url: "ViewNamesAndNumbers.aspx/hello", data: "{}", contentType: "application/json; charset=utf-8", dataType: "json", success: function(msg) { alert(msg); // This doesn't display the response. alert(msg.d); // This displays the response. } // end success: }) // end $.ajax
它是在ASP.NET 3.5的ASP.NET AJAX版本中添加的,以防止您容易受到此攻击:http : //haacked.com/archive/2009/06/25/json- hijacking.aspx
(答案来源于http://encosia.com/2009/06/29/never-worry-about-asp-net-ajaxs-d- again/)