我们计划使用 jQuery 库来增强我们的客户端 JavaScript 需求。

尝试同时使用 ASP.Net AJAX 和 jQuery 时是否存在任何重大问题?这两个库似乎都将 $ 用于特殊目的。有什么冲突是我们需要注意的吗?

我们还使用使用 ASP.Net AJAX 的 Telerik 控件。

TIA

有帮助吗?

解决方案

我们在一个大型项目中使用 ASP.NET Ajax、jQuery 和 Telerik 组件已经有一段时间了,没有遇到任何问题

我绝对推荐使用 jQuery

其他提示

jQuery 有一个 noConflict() 方法作为核心的一部分,但它要求您使用 jQuery 作为您的命名函数或您选择的其他内容(而不是美元选择器)。但是,我要说的是,该方法通常依赖于“竞争”库的实现。我尝试将它用于 Ning 社交网络(使用 Dojo)和 Magento(使用 Prototype),但我都无法正确使用 jQuery。这只是我个人的经验,其他人也很成功。

http://docs.jquery.com/Core/jQuery.noConflict

ASP.NET Ajax 的开发人员采取了特定步骤来确保该库可以与 jQuery 结合使用。

例如,ATLAS CTP(后来成为 ASP.NET Atlas 的测试版)曾经有一个 $() 函数,但它被删除并被 $get() 取代。

一个缺点是服务器端控件可以根据其容器进行重命名。例如,您可能有:

<asp:panel id="panel1" runat="server"></asp:panel>

这可能会呈现为页面:

<div id="ctl00$panel1"></div>

所以如果你使用 jQuery 编写 $('#panel1') 作为选择器,它不起作用。解决这个问题的方法是动态生成 id,例如:

 Dim js as String = "$('" & panel1.ClientID & "').whatever();"

这可能会使 javascript 有点难以阅读,但它确实工作得很好。我使用这种方法开发一个大型 Web 应用程序,jQuery 为我们节省了大量时间,更不用说让网站看起来和工作得更好了。

无论如何,jQuery 的 $ 函数和 ASP.NET AJAX 的 $ 前缀快捷函数($get、$find、$create 等)之间没有冲突。与使用变量一样 F 不会阻止您使用名为的变量 F哦。

在大多数情况下,jQuery 和 ASP.NET AJAX 可以很好地协同工作。在过去的一年里,我唯一一次看到 ASP.NET AJAX 破坏 jQuery 代码是 jDrawer 的这个场景. 。不过,解决方法还不错。

我一直在使用 ext,它是另一个 .net 的 javascript 框架。它比老式的 HTML 表单控件更容易使用

<input type="text" id="whatever" />

比使用 ASP.net 表单控件。您可能想使用很酷的 javascript 框架表单验证,而不是不太好的内置 .net 验证器,但我想这取决于您的偏好

如果您确实想继续使用 .net 控件,请记住标记中生成的 ID 与您定义的不同,因此如果您想在 JS 中通过 id 引用控件,请使用:

<%=MyControlId.ClientID%>

与这个问题相关的最新进展:

Scott Guthrie 于 2008 年 9 月 28 日发布(参见: http://weblogs.asp.net/scottgu/archive/2008/09/28/jquery-and-microsoft.aspx)微软实际上会 开始通过 Visual Studio 交付 JQuery. 。MVC 项目默认包含该库。Scott 表示这是在 JQuery 团队的同意和鼓励下完成的。

请参阅原始帖子 完整的细节.

显然,从第三季度发布开始,Telerik 已经开始将 jQuery 添加到他们的一些 RadControls 中。

我同时使用 jQuery 和 RadControls,但没有时间进一步研究这种纠缠......可能双向摆动......
我有一种全能的感觉,这需要更多的 clusterf***,但这只是基于对其中一些和其中一些的一般经验;-)

请查看 Atanas Korchev 在 Telerik 上关于此主题的博客:
http://blogs.telerik.com/AtanasKorchev/Posts/08-11-06/ASP_NET_Ajax_Controls_and_jQuery.aspx

当 MS、jQuery、Telerik、JP Morgan 和 McDonalds 在我们的桌面上混合在一起时,祝我们所有人好运……;-)

我将 jQuery 与 ASP.NET Ajax 一起使用,因为它们都可以很好地完成不同的事情。我从来没有遇到过将两者一起使用的问题。事实上,我通过使用超级强大的 jQuery 选择器来解决奇怪的 ASP.NET id mashmash。通过能够选择元素的类和子元素(基本上是 CSS),它变得非常易于使用。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top