首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >$.ajax和webmethod/pagemethods

$.ajax和webmethod/pagemethods
EN

Stack Overflow用户
提问于 2009-09-22 09:10:33
回答 2查看 541关注 0票数 0

我正在尝试调用一个没有任何参数的页面方法,但我似乎无法让它工作。

如果我在页面方法中只有一个参数,它就能正常工作。

代码语言:javascript
复制
$.ajax({
  type: "POST",
  url: "Default.aspx/getLastCallData",
  contentType: "application/json; charset=utf-8",
  dataType: "json",
  success: function(msg) {
    alert(msg.d);
  },
  error: function(XMLHttpRequest, textStatus, errorThrown) {
    alert('Couldnt get call data');
  }
});

任何想法。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2009-09-22 13:34:48

由于您没有传递任何数据,因此仍然应该添加data参数并传递一个空JSON对象。

通过发送一个空的JSON对象,jQuery将正确地发送您在$.ajax调用中定义的contentType。这是jQuery的一个奇怪的怪癖,还没有真正解释过。

添加以下参数:

代码语言:javascript
复制
data: "{}"

因此,您的呼叫应如下所示:

代码语言:javascript
复制
$.ajax({
  type: "POST",
  url: "Default.aspx/getLastCallData",
  data: "{}",
  contentType: "application/json; charset=utf-8",
  dataType: "json",
  success: function(msg) {
    alert(msg.d);
  },
  error: function(XMLHttpRequest, textStatus, errorThrown) {
    alert('Couldnt get call data');
  }
});
票数 3
EN

Stack Overflow用户

发布于 2009-09-22 09:16:35

你有没有试过把POST换成GET?我不知道这是否有什么不同,但是由于你没有发送任何数据,你实际上并没有发布任何东西,你只是得到了data...might会发生一些奇怪的事情。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1458969

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档