通过jquery ajax将json对象传递给webmethod

Posted

技术标签:

【中文标题】通过jquery ajax将json对象传递给webmethod【英文标题】:Passing json object to webmethod via jquery ajax 【发布时间】:2017-03-02 07:54:25 【问题描述】:

我正在尝试将 json 对象传递给我的 .net webmethod。 这是我的 C#:

[WebMethod]
public static string Guncelle(string personel)

 return "It came.";

还有我的 jquery ajax:

var saveData = ;
saveData.Isim = isim;
saveData.Soyad = soyisim;
saveData.Firma = firma;
.
.
.
var result = JSON.stringify( personel: saveData );

$.ajax(
        type: "POST",
        url: "Personeller.aspx/Guncelle",
        data: result,
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function (msg) 
           alert(msg.d);
        ,
        error: function (msg) 
           alert(msg.d);
        
)

当我运行代码时,它会返回带有警报的“未定义”。将 json 对象传递给 C# Webmethod 的正确方法是什么?我尝试了其他传递对象的示例,但没有一个对我有用。

【问题讨论】:

试试 "personel": "saveData" 只需传递string,您正在尝试传递具有personel 属性的对象。 您希望返回字符串还是返回 json 对象?如果它是一个字符串,那么 msg.d 是正确未定义的。否则,您需要将响应格式指定为 json。 【参考方案1】:

试试这个:data: "personel:'" + saveData+ "'"

【讨论】:

以上是关于通过jquery ajax将json对象传递给webmethod的主要内容,如果未能解决你的问题,请参考以下文章