AJAX-如何从我的静态[WebMethod]中检索返回的值



我在默认值中有以下pagemethod.aspx页面:

[WebMethod]
public static string Hello()
{
    return "Hello";
}

在这里,我有一个Div文本,我想通过Ajax将其设置为任何返回的内容:

<div id="ajaxDiv"></div>

及以下是我调用Ajax的两种方式。第一个是标准AJAX调用:

 function testAjax()
{
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function ()
{
    if (xmlhttp.readyState == 4 && status == 200)
        $('#ajaxDiv').text(xmlhttp.responseText);
}
xmlhttp.open("POST", "Default.aspx/Hello", true);
xmlhttp.send();

}

第二个是在jQuery的帮助下:

function testAjaxJQuery()
 {
  $.ajax(
  {
     type: "POST",
     url:"Default.aspx/Hello",
     data: "{}",
     success: function (data)
     {
         $('#ajaxDiv').text(data); 
     }
  }
 )

}

我将按钮onclick事件绑定到这些函数,但是通过两种方法,我都会得到我的默认值的标记。ASPX页面,而不是" Hello"一词。我还要做什么。

您应该使用data.d进行响应:

 $.ajax({
   type: "POST",
   url: "Default.aspx/Hello",
   data: "{}",
   contentType: "application/json; charset=utf-8",
   dataType: "json",
   success: function (data) {
         $("#ajaxDiv").text(data.d);
   }
});

最新更新