如何在ASP.NET C#中使用jquery Post?

如何在ASP.NET C#中使用jquery Post?,c#,php,jquery,asp.net,web-services,C#,Php,Jquery,Asp.net,Web Services,您好,我在以前的php站点中有这个函数,用于在页面上发布数据和获取响应,但在aspx页面中我无法找到它(不使用mvc)。代码如下: $.post('contact.aspx/submitdata', data, function () { alert_msg.fadeOut(); form.find('.msg-thanks').fadeIn(function () { textarea.val(textarea.attr('title'));

您好,我在以前的php站点中有这个函数,用于在页面上发布数据和获取响应,但在aspx页面中我无法找到它(不使用mvc)。代码如下:

$.post('contact.aspx/submitdata', data, function () {
    alert_msg.fadeOut();
    form.find('.msg-thanks').fadeIn(function () {

        textarea.val(textarea.attr('title'));

        window.setTimeout(function () {
            form.find('.msg-thanks').fadeOut();
        }, 5000);

    });
});
以前是:

$.post('mail/send.php', data, function () {
    alert_msg.fadeOut();
    form.find('.msg-thanks').fadeIn(function () {

        textarea.val(textarea.attr('title'));

        window.setTimeout(function () {
            form.find('.msg-thanks').fadeOut();
        }, 5000);

    });
});
最糟糕的是调用的方法没有进入调试调用。方法如下:

[WebMethod]
public void SubmitData(string[] data) {
    //do something;
}

webmethod应该是静态的。您还需要设置内容类型

[WebMethod]
public static void SubmitData(string[] data) {
    //do something;
}

$.ajax({
           url: "contact.aspx/submitdata",
           type: "POST",
           contentType: "application/json; charset=utf-8",
           data: data
      })
      .done(function (data) { //do something here on success})
      .fail(function (jqXHR, status) { //error });

如果这是webforms,您不能在这样的页面上调用方法。你必须实现页面加载来获取你提交的表单数据并进行处理。好吧,在连续两天的工作之后,我就这么认为了。但我是jquery新手,他们一定有办法做到这一点?你传递的数据是什么类型的,xml还是json?请阅读以下帖子,感谢我以字符串数组形式传递数据的链接,用于发送邮件。让我试试,因为我对jQueryAjax还不熟悉。我会通知你它是如何为我工作的。好吧,它工作了,那么现在如何从表单中获取textfields和textarea的数据呢?使用jquery从textfields和textarea获取数据非常简单。你可以在互联网上找到数百个教程,只需谷歌一下。