当 ajax post in ASP.net 时消息显示未定义

message shows undefined when ajax post in ASP.net

您好,我是编码新手,在 asp.net 中遇到了错误,如果可以,请帮助我。这是我的脚本,当我 运行 下面给出的代码使用 onclick 函数时,成功消息显示为未定义,并且我放置在断点中的 c# 函数 SaveData 没有命中。显然 post 没有到达服务器功能。

text1和text2是两个变量

$.ajax({
    type: "post",
    contentType: "application/json; charset=utf-8",
    url: "Default.aspx/SaveData",
    data: "{dataval: '" + text1 + "', dataval1: '" + text2 + "'}",
    dataType: "json",
    success: function (data) {
        alert(data.d);
    },
});

服务器端

[WebMethod]
public static string SaveData(string dataval, string dataval1)
{
    string data = String.Format("Your Name is {0} and address is {1}", dataval, dataval1);
    return data;
}

我已经创建了这个示例并且工作正常。请检查以下答案。

$.ajax({
        type: "GET",
        url: "/Home/SaveData",
        data: { dataval: 'asd', dataval1: 'asd' },
        dataType: "json",
        success: function (data) {
            debugger
            alert(data);
        },
        });
    });

后端

[HttpGet]
    public ActionResult SaveData(string dataval, string dataval1)
    {
        string data = String.Format("Your Name is {0} and address is {1}", dataval, dataval1);
        return Json(data, JsonRequestBehavior.AllowGet);
    }

希望对您有所帮助。

好的,我找到了问题的答案。问题是在 App_Start 文件夹中的 RouteConfig.cs 文件中注释一段代码。

 //settings.AutoRedirectMode = RedirectMode.Permanent;

不知道为什么,但之后它运行良好。请告诉我这是如何工作的。