【问题标题】:JSON post doesn't workJSON 帖子不起作用
【发布时间】:2017-04-01 21:20:03
【问题描述】:

我有这个代码:

[WebMethod]
public List<string> pubss(string gn)
    {
        List<string> onepub = new List<string>();
        iam_dbEntities db = new iam_dbEntities();
        var message = from i in db.Public_MessageSet where 
        i.RoomSet.Room_Name == gn select i;
        foreach(var s in message)
        {
            onepub.Add(s.Sender.ToString());
        }
        return onepub;
    }

还有这个 Jquery 代码:

$('#addRoom').click(function () {
 $.ajax({     
            type: "POST",
            url: "WebService.asmx/pubss",
            data: "gn=Programmers",
            dataType: "json",
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            success: function (data) {

                alert(JSON.toString(data));
            }
    });
});

当我点击按钮时,我希望一些警报包含关于 发件人,但什么也没显示,没有一个警报。

【问题讨论】:

  • data 发送的不是您的 contentType 所暗示的 json
  • @charlietfl 那又怎样?
  • 所以如果你打算发送 json 那么它应该是 json。如果您打算发送表单编码数据,则不要将 contentType 设置为 json

标签: jquery asp.net json


【解决方案1】:

试试下面的修改代码

$.ajax({     
            type: "POST",
            url: "WebService.asmx/pubss",
            data: "{gn:'Programmers'}",
            dataType: "json",
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            success: function (data) {

                alert(JSON.toString(data));
            }
    });

【讨论】:

  • 这段代码也不起作用,我的意思是我看到了很多教程,也看到了很多代码,但是当我尝试做同样的事情时,什么也没发生
  • 要从脚本调用 Web 服务方法,.asmx 文件中有一行。默认情况下,它被评论。请取消评论并检查一次
【解决方案2】:

控制台中是否有任何错误请提及? ajax 的状态码是什么?前夕你可以检查以下预防措施: 1. 成功后可以试试:

 data = data.hasOwnProperty("d") ? data.d : data;

可能是 d 属性可能导致的。 2. 使用 JSON.stringify 传递你的数据

 JSON.stringify({gn:'Programmers'})

3。在您的 ajax 中,您有 dataType: "json", 2 次。 4. 如果 ajax 成功,那么调试你的 webMthod 并检查它是否返回正确的数据?

【讨论】:

  • 我添加了错误代码:function (req){alert(req);} 并显示错误:[Object][Object]。我也尝试了 console.log 错误,但没有任何显示。
猜你喜欢
  • 2018-12-15
  • 2018-12-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多