ajax客户端到服务器端

时间:2013-02-04 21:39:22

标签: javascript asp.net ajax

部分a)我试图发送存储在变量' mem_ID'中的值从我的javascript页面... default.aspx到我的服务器端 - default.aspx.cs页面。但我不断收到错误消息。

$.ajax({ 

        type: "POST", 
        url: "default.aspx.cs",
        data: "{mem_ID : ' " + mem_ID + "'}",
        async: true,
        // success: function (result) { } 
        });

$ - 未定义。 预期的标识符或字符串。

部分b)另外,一旦我将其发送到服务器端,我如何收到存储在mem_ID中的值?

1 个答案:

答案 0 :(得分:3)

您可以使用PageMethod。让我们在你的代码中举一个这样的方法的例子:

[WebMethod]
public static string MyMethod(string memId)
{
    return string.Format("Thanks for calling me with id: " + memId);
}

需要注意的事项:该方法必须是静态的,并使用[WebMethod]属性进行修饰。

在客户端,您可以使用jQuery.ajax()函数调用此方法,如下所示:

$.ajax({ 
    url: 'default.aspx/MyMethod',
    type: 'POST', 
    contentType: 'application/json; charset=utf-8',
    data: JSON.stringify({ memID : mem_ID }),
    success: function (result) { 
        alert(result.d);
    } 
});

此外,您对未定义的$符号的错误与您未在页面中引用jQuery库这一事实有关。因此,请确保在使用WebForm之前,您已经实际添加了对jQuery库的引用。例如:

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js" type="text/javascript"></script>