如何从Ajax获取数据

时间:2015-02-16 06:43:50

标签: javascript c# asp.net ajax json

我有一个名为sid的变量来处理座位数。我想将sid投放到TryJSON.aspx方法test。然后我想操作方法测试数据然后将结果扔回这个ajax。但是当我试图抛出sid

时,我有一个错误
var sid = jQuery(this).attr('id');
    console.log(sid);
    $.ajax({
        url: "TryJSON.aspx/test",
        type: "POST",
        data: JSON.stringify({ 'noSeat': sid }),
        contentType: "application/json; charset=utf-8",
        success: function (response) {
            var arr = JSON.parse(response.d);
            console.log(arr);
        },
        error: function () {
            alert("sorry, there was a problem!");
            console.log("error");
        },
        complete: function () {
            console.log("completed");
        }

    });

这是我接收noSeat的C#代码

[WebMethod]
    [ScriptMethod(UseHttpGet = true)]
    public static string test(string noSeat)
    {
       // return noSeat;
        //JavaScriptSerializer serializer = new JavaScriptSerializer();
       // return new JavaScriptSerializer().Serialize(new { noSeat = noSeat });
    }

我尝试只返回noSeat以及Javascript序列化程序。但它有一个错误。它说

  

尝试使用POST请求调用方法'test',这是不允许的。

我已经尝试过了

  

返回“成功!!”

但它没有出现在控制台上,仍然是同样的错误。 怎么回事?

1 个答案:

答案 0 :(得分:0)

var sid = jQuery(this).attr('id');
console.log(sid);
$.ajax({
    url: "TryJSON.aspx/test",
    type: "POST",
    data: JSON.stringify({ 'noSeat': sid }),
    contentType: "application/json; charset=utf-8",
    dataType:'json',
    success: function (response) {
        var arr = JSON.parse(response.d);
        console.log(arr);
    },
    error: function () {
        alert("sorry, there was a problem!");
        console.log("error");
    },
    complete: function () {
        console.log("completed");
    }

});