Javascript 在asp.net中,静态方法不是由AJAX方法生成的

Javascript 在asp.net中,静态方法不是由AJAX方法生成的,javascript,c#,jquery,asp.net,ajax,Javascript,C#,Jquery,Asp.net,Ajax,我想通过asp.net中客户端的AJAX函数调用服务器端的静态方法。我也在调试模式下看到过,但没有进入该方法,同时在windows控制台中也没有显示错误,对于referegoogle,语法也是正确的。然后我不明白为什么AJAX方法不调用静态方法 这是我的密码。这是客户端代码 <input type="submit" id="submit_mail" value="Send" /> <script> $(function () { $.ajax({

我想通过asp.net中客户端的AJAX函数调用服务器端的静态方法。我也在调试模式下看到过,但没有进入该方法,同时在windows控制台中也没有显示错误,对于referegoogle,语法也是正确的。然后我不明白为什么AJAX方法不调用静态方法

这是我的密码。这是客户端代码

<input type="submit" id="submit_mail" value="Send" />

<script>
   $(function () {
      $.ajax({
             type: "POST",
             url: "contact.aspx/SendMail",
             data: JSON.stringify({ name: $('#txt_name').val(), email: $('#txt_emailID').val(), subject: $('#txt_subject').val(), message: $('#txt_content').val() }),
             success: OnSuccess,
             failure: function () {
                      alert("There is some problem in server to contact with us....Please contact with phone number...!!!");
                        }
                  });
            });
           function OnSuccess() {
                   $find("mpe").show();
                        return false;
          }    
</script>

现在的问题是,只有在AJAX调用之后,才会触发此静态方法。

尝试在AJAX调用中使用这些方法。contentType:“application/json;charset=utf-8”,数据类型:“json”,您不需要json的可能副本。stringify@The_Outsider……我做了这件事,但同样的问题也出现了。您应该添加[HttpPost]在您的操作上,我建议再创建一个操作,它将获得post请求,然后您可以在您创建的额外操作中调用mail操作,并在AJAX调用中使用这些操作。contentType:“application/json;charset=utf-8”,数据类型:“json”,您不需要json的可能副本。stringify@The_Outsider……我做了这件事,但同样的问题也出现了。您应该添加[HttpPost]关于你的操作,我建议再创建一个操作,它将获得post请求,然后你可以在创建的额外操作中调用mail操作
[WebMethod]
[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public static void SendMail(string name, string email, string subject, string message)
{
 //here is the code
}