如何使用 jQuery AJAX 调用 ASP.Net 字符串函数?

Posted

技术标签:

【中文标题】如何使用 jQuery AJAX 调用 ASP.Net 字符串函数?【英文标题】:How can I call an ASP.Net string function with jQuery AJAX? 【发布时间】:2021-08-16 13:33:58 【问题描述】:

我有一个字符串函数 ASP.Net Webform。我想使用 AJAX 调用这个函数。 该函数从数据库中返回一个带有月份索引的字符串值

protected string BringDatas(int month)


  Counts counts_ = new Counts();
  return counts_.GetMonths(month);

var dataValue =  "month": 1 ;
$.ajax(
  type: "POST",
  url: "Homepage.aspx/BringDatas",
  data: dataValue,
  error: function (XMLHttpRequest, textStatus, errorThrown) 
    alert("Request: " + XMLHttpRequest.toString() + "\n\nStatus: " + textStatus + "\n\nError: " + errorThrown);
  ,
  complete: function (jqXHR, status) 
    alert("complete: " + status + "\n\nResponse: " + jqXHR.responseText);
  
);

【问题讨论】:

请注意,输入大写等同于喊叫,被认为是粗鲁的。在这种情况下,我为您编辑了标题。关于您的问题,请提供有关您如何公开 BringDatas() 方法的更多背景信息 - 我认为 protected 修饰符将是第一个问题 @RoryMcCrossan 谢谢。 错误是什么? 如果你调试,你实际上是在代码隐藏中点击 WebMethod 吗?如果没有,您可以尝试将此'<%= Page.ResolveUrl("Homepage.aspx/OrnekPost") %>' 用作url 【参考方案1】:

试一试:

代码背后:

    [WebMethod(EnableSession = true)]
    [ScriptMethod(UseHttpGet = true, ResponseFormat = ResponseFormat.Json)]
    public static string BringDatas(int month)
    
      Counts counts_ = new Counts();
      return counts_.GetMonths(month);
    

ajax 调用

    $.ajax(
        type: 'GET',
        url: 'Homepage.aspx/BringDatas',
        data: '"month": 1',
        contentType: "application/json; charset=utf-8",
        dataType: 'json',
        async: false,
        success: function (response) 
            alert("Response: " + response.d);
        ,
        error: function (response) 
        
    );

【讨论】:

【参考方案2】:

这是javascript方面

<script type="text/javascript">
    $(document).ready(
        function () 
            $("#Gonder").click(
                function () 
                   
                    $.ajax
                        (
                            type: "POST",
                            url: "Homepage.aspx/OrnekPost",
                            data: "'parametre':'1234'",
                            contentType: "application/json; charset=utf-8",
                            dataType: "text",
                            success: function (output) 
                                alert("Response: "+ output);
                            , error: function () 
                                alert("hata var");
                            
                        );
                );
        )
</script>

Codebehind.cs 代码

[ScriptMethod]
        [WebMethod(EnableSession = true)]
        public static string OrnekPost(string parametre)
        
            return parametre + " değeriyle post işlemi gerçekleştirildi.";
        

【讨论】:

以上是关于如何使用 jQuery AJAX 调用 ASP.Net 字符串函数?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 javascript/jquery/AJAX 调用 Django REST API?

如何使用 jQuery 的 ajax 方法调用局部视图

jquery如何在另一个结束后使用多个ajax调用

如何使用 jQuery 和 ASP.NET MVC 从 AJAX 调用返回错误消息?

如何使用简单的 jquery-ajax 调用上传文件

如何使用 jquery ajax 调用来调用 php 函数? [复制]