当前位置: 代码迷 >> ASP.NET >> jquery ajax $post 为什么调用不到后台方法,该怎么处理
  详细解决方案

jquery ajax $post 为什么调用不到后台方法,该怎么处理

热度:2689   发布时间:2013-02-25 00:00:00.0
jquery ajax $post 为什么调用不到后台方法
jquery: 
  function sq_Click() {
  $.ajax({
  //要用post方式  
  type: "Post",
  //方法所在页面和方法名
  url: "xia_advise.aspx/GetDataSet",
  dataType: "text", 
  success: function(data) {
  //返回的数据用data.d获取内容  
  alert(data.d);
  },
  error: function(err) {
  alert('ffff');
  }
  }); 

  }

后台:
  [WebMethod]
  public static string GetDataSet()
  {
  return "abc";
  }

------解决方案--------------------------------------------------------
探讨
jquery:
function sq_Click() {
$.ajax({
//要用post方式
type: "Post",
//方法所在页面和方法名
url: "xia_advise.aspx/GetDataS……

------解决方案--------------------------------------------------------
估计他是要保留页面上的属性把。 不然也不会跟我一样要弄前台代码。


------解决方案--------------------------------------------------------
少个contentType的参数!
------解决方案--------------------------------------------------------
探讨

少个contentType的参数!

------解决方案--------------------------------------------------------
后台直接打印一个字符串就可以了
比如
Response.Write("{\"name\": \"Tom\"}");

前台
function sq_Click() {
$.ajax({
//要用post方式
method: "post",
//方法所在页面和方法名
url: "xia_advise.aspx/GetDataSet",
dataType: "json",
success: function(data) {
//返回的数据用data.d获取内容
alert(data.name);
},
error: function(err) {
alert('ffff');
}
});

}



这样试试
------解决方案--------------------------------------------------------
contentType: "application/json;charset=utf-8",
加上这个试试
  相关解决方案