首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >执行jquery c#成功函数,但没有响应。

问执行jquery c#成功函数,但没有响应。
EN

Stack Overflow用户
提问于 2013-07-16 11:42:54
回答 3查看 3.6K关注 0票数 1

这个帖子被解雇了,我可以在firebug中看到下面的内容。

代码语言:javascript
复制
POST http://localhost:1148/WebSite2/frmMain.aspx/webDelete 200 OK 15ms

jQuery代码是:

代码语言:javascript
复制
$.ajax({
   url: "frmMain.aspx/webDelete",
   type: "POST",  
   dataType: "text",
   contentType:"text/plain",
   data: {id:"abc"},
   success: function(data){alert("success");alert(data)},
   error: function(){alert("failed");}
});

然后触发成功函数中的两个警报,但第二个警报为空。

服务器端编码:

代码语言:javascript
复制
[WebMethod][ScriptMethod]
public static string webDelete(string id)
{
    HttpContext context = HttpContext.Current;
    context.Response.ContentType = "text/plain";

    return id;
}

目前,在没有param参与的情况下,错误函数被触发,没有成功。

jquery代码

代码语言:javascript
复制
$.ajax({

        url: "frmMain.aspx/webDelete",
        type: "POST",  
        dataType: "json",
        contentType: "application/json; charset=utf-8",
        data: "{}",
        async: true,            
        success: function(data){alert("success");alert(data.d) },
        error: function(){alert("failed"); }

    } );

服务器代码

代码语言:javascript
复制
[WebMethod][ScriptMethod]
public static string webDelete()
{
   return "hello";
}

防火墙信息:

响应头

代码语言:javascript
复制
Cache-Control   private
Connection          Close
Content-Length  11732
Content-Type    text/html; charset=utf-8
Date            Thu, 18 Jul 2013 09:47:34 GMT
Server          ASP.NET Development Server/8.0.0.0
X-AspNet-Version    2.0.50727

请求头

代码语言:javascript
复制
Accept          application/json, text/javascript, */*; q=0.01
Accept-Encoding gzip, deflate
Accept-Language en-US,en;q=0.5
Content-Length  2
Content-Type    application/json; charset=utf-8
Host            localhost:1148
Referer         http://localhost:1148/WebSite2/frmMain.aspx
User-Agent          Mozilla/5.0 (Windows NT 5.2; rv:22.0) Gecko/20100101 Firefox/22.0
X-Requested-With    XMLHttpRequest
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-07-18 11:14:19

谢谢大家的帮助,^_^

通过这篇精彩的帖子找到了答案!

jquery ajax with asp.net not working

注意:这个isuue是由.NET版本问题引起的。

票数 0
EN

Stack Overflow用户

发布于 2013-07-16 12:59:26

为了看看怎么回事。

  1. 调试webDelete()以查看id实际上是'abc'!解析表单数据可能会有问题.
  2. 使用FireBug或Chrome F12检查实际响应

试着导航到:

代码语言:javascript
复制
http://localhost:1148/WebSite2/frmMain.aspx/webDelete?id=myNeetID
  • 这会点燃WebMethod吗?
  • 这是返回myNeetID还是空白?

注意:您可能需要启用GET方法。

票数 0
EN

Stack Overflow用户

发布于 2013-07-16 13:13:24

如果组合使用WebMethod,则需要对ajax调用进行一些更改。

代码语言:javascript
复制
$.ajax({
   url: "frmMain.aspx/webDelete",
   type: "POST",  
   dataType: "json",
   contentType: "application/json; charset=utf-8",
   data: JSON.stringify({id:"abc"}),
   success: function(data){alert("success");alert(data.d)},
   error: function(){alert("failed");}
});

请参见:

http://encosia.com/using-jquery-to-directly-call-aspnet-ajax-page-methods/

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

https://stackoverflow.com/questions/17675619

复制
相关文章

相似问题

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