我是 MVC 的新手。我正在使用 MVC3。我创建了三个部分视图,它们在多个其他视图中共享。所以我在单独的 div 控件中加载每个部分视图
<div data-role="content" id="div_parent" style="background-color: #454545"
<div id="div1" style="display:none">
@Html.Partial("_View1")
</div>
<div id="div2" style="display:none;">
@Html.Partial("_View2")
</div>
<div id="div3" style="display:none">
@Html.Partial("_View3")
</div>
</div>
我隐藏了所有的观点
$(document).ready(function () {
$("#div1").hide();
$("#div2").hide();
$("#div3").hide();
}); // end of change
});
在选择选项上,我显示了各自的视图
<select id="views" data-mini="true" data-native-menu="false">
<option value="view1" data-mini="true">view1</option>
<option value="view2" data-mini="true">view2</option>
<option value="view3" data-mini="true">view3</option>
</select>
function ShowView(viewType)
{
$("#div1").show();
$("#div2").hide();
$("#div3").hide();
}
但这里的问题是在所有 3 个视图中我都有同名的 javascript 函数,所以当我点击 view1 上的按钮时,它正在调用 view2 或 view3 的 javascript 函数。因此,即使 div 是隐藏的,javascript 函数仍会加载到 html 页面上。这是一种情况。还有其他问题。所以我的问题是如何避免这种情况。如何加载/卸载视图,以便它不会在视图中呈现整个 html 而只是隐藏它。