【问题标题】:ASP.NET Conversion to Fully AJAX Based ApplicationASP.NET 转换为完全基于 AJAX 的应用程序
【发布时间】:2011-01-01 15:19:41
【问题描述】:

我负责将 ASP.NET Web 应用程序转换为完全基于 AJAX 的应用程序。我非常了解 Javascript 和 Jquery。

最初我想将每个锚标记的点击事件指向 JS 函数并通过 ajax 调用东西并填充正文等。当涉及到每个页面上的 ASP.NET 表单以及需要进行回发时,我都遇到了问题。我决定将每个 Form 标签的 onSubmit 事件指向一个 JS 函数,以使用 ajax 发布内容并获得结果,我知道这对于 ASP.NET 是不可能的,因为每次单击按钮时,都会有回发所以很难让页面知道点击了哪个按钮。

然后我决定使用 ASP.NET 内置的 AJAX 控件来与 Forms 一起使用,这非常简单,并且按照他们应该的方式工作。

现在我被困在我应该选择哪一个的问题上?

我喜欢 JS 方式,因为它比 AJAX.NET 更可定制。我非常需要你的建议。

【问题讨论】:

  • 我认为使用 .net mvc framwrok 而不是 asp.net 表单来完成此任务会容易得多。
  • @Richard:应用程序已经创建,这就是为什么将它转换为 MVC 框架将为我们创造更多的工作。

标签: javascript asp.net jquery ajax ajax.net


【解决方案1】:

我认为使用 ASP.NET Ajax 没有问题。 scriptmanager 和 UpdatePanel 控件将使您轻松快速地转换为启用 ajax 的网站。 我不确定您正在寻找什么样的定制,但您仍然可以在必要时使用 js 方式。 ASP.NET Ajax 的另一个优点是它经过了良好的测试和数千个站点的使用,并带有许多控件,例如 ajaxcontrol 工具包。

【讨论】:

    【解决方案2】:

    如果您想将 Web 表单应用程序完全转换为 JavaScript 编码,这将很难做到。使用 updatepanel 控件使其对用户看起来异步会容易得多,因为这不会破坏服务器端集成。但是如果你是用 JS 回传到服务器,然后每次都擦掉 UI 并用新的 UI 替换,那就更难了。

    理想情况下,最好的方法是使用 Web 服务,通过 JS 代码(JQuery 或使用 Sys.Net.WebServiceProxy ASP.NET AJAX 对象)调用 Web 服务来流式传输数据,然后在 JS 中构建客户端。

    如果您想了解更多信息,请告诉我...

    HTH。

    【讨论】:

    • 只要满足我的要求,我使用 UpdateProblem 就没有问题。表单提交后有 Response.Redirect(...) 调用,我希望在将其转换为 UpdatePanel 时对其进行处理。此外,如果有没有办法覆盖 ASP.NET 的 __doPostBack 函数,以便每次调用它时我都会修改它的默认行为并通过 AJAX 获取页面以显示在 下。
    • 你好,通过AJAX获取页面显示body,你的意思是替换页面中的UI吗?然后 UpdatePanel 适合您,因为它会为您处理所有这些,因此您不必自己做。
    猜你喜欢
    • 2012-03-28
    • 1970-01-01
    • 2017-02-15
    • 1970-01-01
    • 1970-01-01
    • 2013-09-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多