【问题标题】:Does an MVC 4 partial view use its parent view's .css and .js, or do you have to add the .css and .js into the partial view?MVC 4 局部视图是否使用其父视图的 .css 和 .js,还是必须将 .css 和 .js 添加到局部视图中?
【发布时间】:2013-12-02 00:06:39
【问题描述】:
为了澄清我的问题,例如说我有一个常规视图,其中包含指向以下 .js 和 .css 文件的以下链接:
<script type="text/javascript" src="~/Scripts/chosen.jquery.js"></script>
<link rel="stylesheet" href="~/Content/chosen.css" />
现在,假设我创建了一个可以从此常规视图调用的局部视图。我是否必须在局部视图中放置指向 .js 和 .css 文件的相同链接,或者局部视图是否已经使用这些文件,因为它们已经在常规视图中使用?此外,如果我有一个包含所有常规视图使用的 .js 和 .css 链接的布局,这将如何工作。 MVC4 中的育儿结构是如何工作的,甚至有没有育儿结构?
【问题讨论】:
标签:
javascript
css
asp.net-mvc-4
razor
partial-views
【解决方案1】:
是的,局部视图被渲染到主页面中。因此,浏览器将选择并使用您已经在适当位置声明的 JS 和 CSS。
唯一需要注意的是,如果您通过 AJAX 加载部分视图。如果您有任何 javascript 处理程序,则需要在加载局部视图后对其进行初始化,否则您的框架(例如 jQuery)将不会将事件绑定到元素。
以上说明
我的部分观点
<div>
<span id="clickMe">Click Me</span>
</div>
在这里,您需要在加载局部视图或在局部视图中声明处理程序后将处理程序附加到“clickMe”范围,例如
我的部分观点第二轮
<div>
<span id="clickMe">Click Me</span>
</div>
<script type="text\javascript">
$(function(){
$("#clickMe").on("click", function(){
alert("He he, that tickles");
});
});
</script>