使用jquery和参数的asp.net页面方法

时间:2011-02-15 20:37:41

标签: asp.net json

在我的javascript中,我有:

var testdate = "{'TheNewDate' : '12/02/2011'}";

$("#mydiv").click(function () {
    $.ajax({
        type: "POST",
        url: "../Pages/Appointments.aspx/GetAppointements",
        data: testdate,
        contentType: "application/json; charset=utf-8",
        dataType: "json",
            success: successFn,
        error: errorFn

    });
});

在我的代码中我有

[WebMethod]
public static string GetAppointements(string DateInput)
{
    var t = DateInput;

但是,当我点击运行呼叫时,我会启动错误功能。当我将函数后面的代码更改为公共静态字符串GetAppointement()时,它可以工作。但我想我的目标是将参数传递给后面的代码。我错过了什么?

感谢。

2 个答案:

答案 0 :(得分:4)

您的参数名为DateInput,而不是TheNewDate,因此:

$('#mydiv').click(function () {
    $.ajax({
        type: 'POST',
        url: '../Pages/Appointments.aspx/GetAppointements',
        data: JSON.stringify({ dateInput: '12/02/2011' }),
        contentType: 'application/json; charset=utf-8',
        dataType: 'json',
        success: successFn,
        error: errorFn
    });
});

答案 1 :(得分:2)

您应该使您的JSON数据与Web服务方法中的参数名称匹配。

var testdate = "{'DateInput' : '12/02/2011'}";