使用ASP.Net AJAX和JQuery的任何缺点

我们计划使用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的beta版)曾经有一个$()函数,但它被删除并替换为$ get()。

一个缺点是服务器端控件可以重命名,具体取决于它们的容器。 例如,您可能有:

 

这可以呈现给页面:

 

因此,如果您使用$('#panel1')作为选择器编写jQuery,它将无法工作。 解决这个问题的方法是动态生成id,例如:

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

这可能会使javascript有点不可读,但它确实很有效。 我使用这种方法处理大型Web应用程序,jQuery为我们节省了大量时间,更不用说使网站外观和工作更好了。

对于它的价值,jQuery的$函数和ASP.NET AJAX的$前缀快捷函数($ get,$ find,$ create等)之间没有冲突。 与使用变量f一样,不会阻止您使用名为f oo的变量。

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

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

  

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

如果你想继续使用.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团队的同意和鼓励下完成的。

有关详细信息,请参阅原始post。

显然,Telerik已经开始从版本Q3开始向他们的一些RadControls添加jQuery。

我同时使用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,摩根大通和麦当劳在我们的台式机上混合和混合时,我们都祝你好运… 😉

我已经在ASP.NET Ajax中使用了jQuery,因为它们都做得很好。 我从来没有遇到过将两者结合使用的问题。 事实上,我通过使用超级强大的jQuery选择器绕过了奇怪的ASP.NET id mishmash。 通过能够选择元素的类和子元素(基本上是CSS),它使它非常容易使用。