使用数据进行AJAX后调用

时间:2015-05-20 20:43:19

标签: javascript c# .net ajax

这是我的default.aspx

        $.ajax({
            url: "Default.aspx/Myfunction",
            dataType: "json",
            type: "POST",
            data: {someParameter: "some value"},
            contentType: "application/json; charset=utf-8",
            success: function (data) {
                alert(data.d);
            },
            error: function (d) {
                alert("error");
            }
        });

这是我的代码隐藏:

    [WebMethod]
    public static string Myfunction(string someParameter)
    {
        return "hello";
    }

它继续发生错误。我看到,如果我发送带有null的Ajax请求数据并且函数上没有参数,我会得到数据“hello”out。所以我发送数据的方式存在一些问题,但目前还不清楚是什么

4 个答案:

答案 0 :(得分:1)

将参数放在引号

$.ajax({
            url: "Default.aspx/Myfunction",
            dataType: "json",
            type: "POST",
            data: {'someParameter': 'some value'},
            contentType: "application/json; charset=utf-8",
            success: function (data) {
                alert(data.d);
            },
            error: function (d) {
                alert("error");
            }
        });

答案 1 :(得分:1)

数据对象必须是单个字符串。

data: JSON.stringify({someParameter: "some value"})

答案 2 :(得分:0)

更改此行:

data: {someParameter: "some value"},

为:

data: {"someParameter": "some value"},

JSON对象属性需要用引号括起来。

答案 3 :(得分:0)

以下是我如何做同样的事情:

$.ajax({
    type: "POST",
    dataType: "json",
    url: "RouteService.asmx/getRouteData",
    data: { techID: techID, jobID: jobID },
    success: function(msg) {
        processRouteData(msg);
    }

尝试删除此行:

contentType: "application/json; charset=utf-8",