我有一个实现为 MVC3 PartialView 的可重用组件。该组件包括需要 javascript 初始化代码才能运行的 jquery-ui 小部件。下面是一个简化的例子:
==== MySimplifiedPartialView.cshtml ====
<div id="myTabs">
<ul>
<li><a href="#myTabs-tab1">Tab 1</a></li>
<li><a href="#myTabs-tab2">Tab 2</a></li>
<li><a href="#myTabs-tab3">Tab 3</a></li>
<li><a href="#myTabs-tab4">Tab 4</a></li>
</ul>
<div id="myTabs-tab1">
...content
</div>
<div id="myTabs-tab2">
... content
</div>
... etc ...
</div>
<script type="text/javascript">
$(document).ready(function () {
$("#myTabs").tabs();
});
</script>
当这个 PartialView 正常加载到页面中时,$(document).ready
会运行初始化代码并正确初始化小部件(在本例中为 jquery-ui 选项卡)。
但是,我也希望能够动态地将这个 PartialView 加载到 DOM 中,例如作为 AJAX 请求的结果。在这种情况下,确保初始化代码运行的常用方法是什么?在 ASP.NET WebForms 应用程序中,我会使用UpdatePanel
, 并通过处理加载事件来实现这一点,例如:
Sys.Application.add_load(function () {
$("#myTabs").tabs();
});
MVC3 应用程序中的等价物是什么?