Chrome 在 MVC 视图中循环期间无响应
Chrome unresponsive during loop in MVC view
我有一个视图,它只是用我模型中列表中的对象填充页面,但在此期间,Google Chrome 变得没有响应并询问我们是否要终止页面。这有点令人沮丧,因为 IE 和 FF 都可以正常工作(瞬间加载),我不会开始推荐用户使用 IE 作为短期解决方案(只是不能让自己去做)。
这是一个页面快死的例子。循环正在填充 table:
中的行
For i = 0 To Model.ListOfStuff.Count - 1
@<tr>
<td>@Html.LabelFor(Function(d) d.ListOfStuff(i).SelectedItem, Model.ListOfStuff(i).Name)</td>
<td>
@Html.CheckBoxFor(Function(c) c.ListOfStuff(i).SelectedItem)
@Html.HiddenFor(Function(c) c.ListOfStuff(i).Id)
</td>
</tr>
下一个
这包含不超过 900 条记录,所以我不确定为什么 Chrome 会掉到这里。
所以我对 SO 的问题是,我如何优化它以使 Chrome 不会摔倒?或者,是否有已知的 Chrome 变得无响应的解决方法?我在这里抓着救命稻草。
非常感谢您的帮助。
万一有人遇到这个问题并且处于类似的位置,这里是问题的解决方案。
问题是我将 jquery-1.7.1.js 包含在我的共享 _Layout.vbhtml 视图中,捆绑在一起。出于某种原因,虽然没有 jQuery 被主动调用,但如果它们包含包含相当多记录的循环,这会导致多个视图崩溃。
为了解决这个问题,我创建了一个名为“_LayoutNoScripts.vbhtml”的新共享布局视图(并删除了所有脚本)并将有问题的视图的布局设置为此:
@Code
Layout = "~/Views/Shared/_LayoutNoScripts.vbhtml"
@End Code
然后,因为视图中实际需要 jQuery,所以我将脚本作为个人参考包含在内:
<script src="@Url.Content("~/scripts/jquery-1.7.1.js")"></script>
我有一个视图,它只是用我模型中列表中的对象填充页面,但在此期间,Google Chrome 变得没有响应并询问我们是否要终止页面。这有点令人沮丧,因为 IE 和 FF 都可以正常工作(瞬间加载),我不会开始推荐用户使用 IE 作为短期解决方案(只是不能让自己去做)。
这是一个页面快死的例子。循环正在填充 table:
中的行For i = 0 To Model.ListOfStuff.Count - 1
@<tr>
<td>@Html.LabelFor(Function(d) d.ListOfStuff(i).SelectedItem, Model.ListOfStuff(i).Name)</td>
<td>
@Html.CheckBoxFor(Function(c) c.ListOfStuff(i).SelectedItem)
@Html.HiddenFor(Function(c) c.ListOfStuff(i).Id)
</td>
</tr>
下一个
这包含不超过 900 条记录,所以我不确定为什么 Chrome 会掉到这里。
所以我对 SO 的问题是,我如何优化它以使 Chrome 不会摔倒?或者,是否有已知的 Chrome 变得无响应的解决方法?我在这里抓着救命稻草。
非常感谢您的帮助。
万一有人遇到这个问题并且处于类似的位置,这里是问题的解决方案。
问题是我将 jquery-1.7.1.js 包含在我的共享 _Layout.vbhtml 视图中,捆绑在一起。出于某种原因,虽然没有 jQuery 被主动调用,但如果它们包含包含相当多记录的循环,这会导致多个视图崩溃。
为了解决这个问题,我创建了一个名为“_LayoutNoScripts.vbhtml”的新共享布局视图(并删除了所有脚本)并将有问题的视图的布局设置为此:
@Code
Layout = "~/Views/Shared/_LayoutNoScripts.vbhtml"
@End Code
然后,因为视图中实际需要 jQuery,所以我将脚本作为个人参考包含在内:
<script src="@Url.Content("~/scripts/jquery-1.7.1.js")"></script>