更新:一位同事告诉我,这是MVC4测试版中的一个已知错误。这个问题是由JavaScript的}括号造成的,导致RenderSection认为该部分已经结束。RenderSection <head >丢失文本
我在页面特定的jquery的布局中有一个rendersection。它没有正确地将代码从我的视图复制到渲染部分。
我在我的_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>
?
这就是我最终做的,它的工作原理。感谢最佳做法提示,我不知道它。 – 2012-04-12 03:12:17