2012-04-11 3 views
2

更新:同僚はMVC4ベータ版の既知のバグだと教えてくれました。この問題は、javascriptの}ブラケットが原因でRenderSectionがセクションが終了したと考える原因となります。RenderSection in <head >テキストがありません

ページ固有のjqueryのレイアウトにレンダリングセクションがあります。私のビューからレンダリングセクションにコードを正しくコピーしていません。

私は私の_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がを逃した理由を誰もが知っています3210?

答えて

2

して<meta>タグを閉鎖する

てみてくださいあなたは、ヘッダーであなたのJavaScriptを配置する理由はありますか?

私はこの問題が何であるかを100%確信していませんが、ここにはベストプラクティスの提案があります。このスクリプトをあなたのビュー/ページの一番下に置くことをお勧めします。それはベストプラクティスです。だからあなたのレイアウトビュー/マスターページでは、あなたの体のタグを閉鎖する直前に、次の操作を行います。

<body> 

    <!-- Other HTML code --> 

    <script src="@Url.Content("~/Assets/JavaScripts/jquery-1.7.2.min.js")"></script> 
    @RenderSection("JavaScriptBodySection", false) 

</body> 

そして、あなたのビューであなただけのこの操作を行います。

@section JavaScriptBodySection 
{ 
    <script> 

      $(document).ready(function() { 
       var listid = '@(Model.ID)'; 
       $("#additem").load("~/Item/AddItem/" + listid); 
      }); 

    </script> 
} 

は、私も私のメタを持っているが私のドキュメントタイプがHTML 4.01厳格であったため、あなたのようなタグがありました。私はこの問題を抱えていません。私はちょうど私のJavaScriptのすべてをページの一番下に置きます。

+0

これは私がやったことです、それは動作します。ベストプラクティスのヒントをありがとう、私はそれを認識していませんでした。 –

3

考えられる理由はおそらく、あなたの<meta>タグが適切に閉じられていない可能性があります。これはIEでこのような結果をもたらします。 />

<meta name="viewport" content="width=device-width" /> 
+3

あなたはチャック・ノリスです、本当に!私はあなたがいると確信しています...:D –

関連する問題