更新:一位同事告诉我,这是 MVC4 beta 中的一个已知错误。该问题是由 javascript 中的 } 括号引起的,导致 RenderSection 认为该部分已结束。
我的布局中有一个针对页面特定 jquery 的渲染部分。它没有正确地将代码从我的 View 复制到渲染部分。
我的 _Layout.cshtml 中有以下内容(模板 _Layout.cshtml + 我的新部分)
<script src="@Url.Content("~/Scripts/AjaxLogin.js")" type="text/javascript"></script>
@RenderSection("jqueryheader", false)
<meta name="viewport" content="width=device-width">
</head>
我的 Index.cshtml 中有以下代码
@section jqueryheader {
<script type="text/javascript">
$(document).ready(function () {
var listid = '@(Model.ID)';
$("#additem").load("~/Item/AddItem/" + listid);
});
</script>
}
我在 IE 中得到以下输出:
<script src="/Scripts/AjaxLogin.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function () {
var listid = '9f3348ef-f713-48c6-a267-3777182cf39e';
$("#additem").load("~/Item/AddItem/" + listid);
<meta name="viewport" content="width=device-width">
</head>
任何人都知道为什么 RenderSection 错过了 });</script>
?
最佳答案
可能的原因可能是您的<meta>
标签没有正确关闭,导致 IE 中出现这样的结果。
尝试关闭您的<meta>
标签为 />
<meta name="viewport" content="width=device-width" />
关于jquery - <head> 中的 RenderSection 缺少文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10100654/