【发布时间】:2010-09-07 21:09:28
【问题描述】:
我看到很多关于 PartialViews 和 Javascript 的问题:问题是 PartialView 需要 Javascript,例如呈现 jqGrid 的视图:
部分视图需要<div id="myGrid"></div>
然后是一些脚本:
<script>
$(document).ready(function(){
$('#myGrid').jqGrid( { // config params go here
});
}
</script>
问题是如何包含 PartialView 而不用内联标签和多个 $(document).ready 标签乱扔页面。
我们还希望将多个 RenderPartial 调用的结果合并到一个 document.Ready() 调用中。
最后,我们遇到了 Javascript 库文件的问题,例如 JQuery 和 JQGrid.js,理想情况下它们应该包含在页面底部(就在 $.ready 块之前),并且理想情况下仅在适当的 PartialViews 出现时才包含页面上使用。
在搜索万维网时,似乎没有人解决过这个问题。一种潜在的方法可能是实现自定义视图引擎。我想知道是否有人有任何我可能错过的替代建议?
【问题讨论】:
-
您当前的实施遇到了什么问题?在页面底部的一个 $(document).ready() 函数中“分组”对 .jqGrid() 的调用时,您是否看到性能提升?
-
在页面上开始有数百个这样的调用之前,不会有明显的性能提升。在达到这一点之前,您可以将其简化为一个针对所有项目的 jQuery 调用,其中包含一个类选择器和一个参数化函数来执行 jiggery pokery。
-
“用内联标签和多个迭代页面” Jeesh。我认为你不会因为关心这些东西而让你的客户和用户更快乐。
-
我想在页面末尾包含对 JQuery 核心库和 JQGrid 以及其他一些适用的扩展的引用。这是一个众所周知的性能最佳实践。如果我在包含 jquery 之前引用 $(document).ready() 它自然会中断。我不太关心将这些请求放在一起,这样更好。
标签: javascript jquery asp.net-mvc