我们有一个包含大量jQuery(大约2000行)的页面,我们想要减少b / c这是一个维护噩梦,它可能更容易维护在服务器上。我们已经考虑过使用UpdatePanel。但是,我们不喜欢UpdatePanel将整个页面发送回服务器的事实。
答案 0 :(得分:40)
不要移动到UpdatePanels。来自jQuery之后,the drop in performance将是站不住脚的。特别是在与你的声音一样复杂的页面上。
如果您有2,000行JavaScript代码,解决方案是重构该代码。如果你在一个文件中放入2000行C#代码,那么它也很难维护。使用任何语言或工具很难有效管理。
如果您使用的是3.5 SP1,则可以使用ScriptManager的新脚本组合将JavaScript分成多个文件而不会受到惩罚。这样,您可以像对待服务器端代码那样对代码进行逻辑分区。
答案 1 :(得分:11)
请不要把自己置于痛苦的世界。而是使用UFRAME,它更快,并在jQuery中实现。
现在,要管理这些2000行的Javascript代码,我建议将代码拆分到不同的文件中,并设置构建过程,以便将JSMin或Yahoo Compressor加入到块中。
答案 2 :(得分:6)
我不知道是否有办法优化UpdatePanels,但我的公司发现其性能非常差。 jQuery在做任何事情上要快得多。
UpdatePanel触发更新的时间与UpdatePanel实际更新页面之间可能会有很多延迟。
我们使用UpdatePanels的唯一原因是因为易于开发。几乎没有什么可以让它们发挥作用。
答案 3 :(得分:3)
使用UpdatePanel强制您使用在您的网页中添加了大量脚本的ScriptManager。 UpdatePanel为您提供部分回发而不是真正的ajax。 如果您只能在局域网而不是互联网上运行,那么如果您的目标是互联网,请尝试重新编写代码并使用某些工具对其进行压缩,然后再在网站上发布