【问题标题】:What is the correct file type to handle jQuery AJAX in asp.net?在 asp.net 中处理 jQuery AJAX 的正确文件类型是什么?
【发布时间】:2013-08-09 22:25:27
【问题描述】:

我正在尝试在我的 asp.net 网络应用程序中使用 jQuery AJAX。我是aspnet 的新手,之前一直使用PHP。我处理AJAX 的方法是使用一个URL 来处理所有AJAX 请求,并以JSON 响应。我最初的想法是为此使用常规的.aspx Web 表单(就像在PHP 中一样,我只是像站点中的任何其他页面一样使用常规的PHP 文件),但后来我看到VS2010 具有所有这些其他类型的可以添加的文件,并且想知道其中一个更好(可能已经具有一些内置功能,或者资源更轻且响应更快),因为我不熟悉其中任何一个。

处理这些AJAX 请求的正确方法是什么?

附:我的Session 可以在我的AJAX 处理程序中使用吗?

【问题讨论】:

  • 您打算使用哪种技术? WebForms 还是 MVCMVC 中的 Ajax 对您来说看起来很熟悉。另一方面,WebForms 通常使用UpdatePanels 来完成工作(这可能看起来与您过去所做的非常不同)。
  • WebForms(这是一个学校项目,我不能选择 MVC 或 WebForms)
  • 那你最好学习UpdatePanels。 webforms 中的普通 ajax 有点麻烦(您需要在代码隐藏中编写静态方法)。 UpdatePanels 很容易。

标签: jquery asp.net ajax


【解决方案1】:

我通常在服务器端只有一个文件来处理所有的 ajax 请求

ajax.aspx

<%
    if (Request.QueryString["getRateofProd"] != null) {
        string prodid = Request.QueryString["getRateofProd"];
        Response.Write (getRate(prodid));
        return;
    }
    if (Request.QueryString[" <<< similarly other variables and requests >>> "] != null)
    {
        .... // Handle another GET Request
        return;
    }
%>

我可以通过 URL 传递值以通过 GET 方法从服务器获取字符串响应

每个客户请求都是由

$.ajax(
{
    url: 'ajax.aspx?getRateofProd=P1',
    success: function(response)
    {
        $('#<%=lblrate.ClientID%>').text(response);
    }
}

使用全局处理程序文件将所有对 SERVER 的请求重定向到使用 ASP.NET URL 重写的该文件,

在 PHP、Apache 中,有 .htaccess 文件重定向所有请求。我不知道 ASP.NET url 重写对不起。

一旦任何请求被重定向到特定文件requestshandler.aspx 检测它是否是类似 Ajax 请求

if(Request.Headers["X-Requested-With"] == "XMLHttpRequest")
{
    ...
}

【讨论】:

    【解决方案2】:

    如果你想在 ASP.NET 中使用 jQuery,

    使用$.ajax()API并使用post方法异步调用ASP.NET代码背后的Web方法。

    点击此链接如何调用 ASP.NET 的 Web 方法

    Calling an ASP.NET Web method from $.ajax()

    您可以在 jQuery 中使用这个 $.ajax() 函数来处理对服务器的异步请求。并手动更新网页中的 div / 面板。

    【讨论】:

    • 我知道如何做 jQuery 方面。我的问题是关于服务器端的。
    猜你喜欢
    • 2021-04-21
    • 2011-11-29
    • 2010-09-22
    • 1970-01-01
    • 2013-07-24
    • 2023-01-25
    • 1970-01-01
    • 1970-01-01
    • 2010-10-01
    相关资源
    最近更新 更多