0

「AdminLayout.cshtml」に jquery アコーディオン メニューを追加したいと考えています。ルートですべてのコードを使用すると、メニューは正常に機能しますが、管理エリアの「AdminLayout.cshtml」に追加すると、JavaScript コードが機能しません。私のローティングは真実です。なんで?

jqueryコード:

  <script type="text/javascript">
   $(document).ready(function ($) {  
       $('#accordion-3').dcAccordion({
           eventType: 'click',
           autoClose: false,
           saveState: false,
           disableLink: false,
           showCount: false,
           speed: 'slow'
       });
  </script>

HTML コード:

    <ul class="accordion" id="accordion-3">
        <li><a href="#">Home</a>  <ul>
                <li><a href="#">Page 1</a></li>
                <li><a href="#">Page 2</a></li>
                <li><a href="#">Page 3</a></li>
                <li><a href="#">Page 4</a></li>
            </ul></li>
        <li><a href="#">Products</a><ul>
            <li><a href="#">Mobile Phones &#038; Accessories</a><ul>
                <li><a href="#">Product 1</a>
                    <ul>
                        <li><a href="#">Part A</a> </li>
                        <li><a href="#">Part B</a></li>
                        <li><a href="#">Part C</a></li>
                        <li><a href="#">Part D</a></li>
                    </ul>
                </li>
            </ul>
            </li>
            <li><a href="#">Accessories</a>
            <ul>
                <li><a href="#">Product 14</a></li>
                <li><a href="#">Product 15</a></li>
            </ul>
            </li>
        </ul></li>
    </ul>

これらのファイルを使用します。

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script src="../../Scripts/jquery.cookie.js" type="text/javascript"></script>
<script src="../../Scripts/jquery.hoverIntent.minified.js" type="text/javascript"></script>
<script src="../../Scripts/jquery.dcjqaccordion.2.7.min.js" type="text/javascript"></script>
4

3 に答える 3

0

スクリプト参照 URL に誤りがあるためだと思います。したがって、この状況を克服するにはUrl.Content()メソッドを使用します。仮想 (相対) パスをアプリケーションの絶対パスに変換します。

例 :

<script src='@Url.Content("~/Scripts/jquery.cookie.js")' type="text/javascript"></script>
<script src='@Url.Content("~/Scripts/jquery.hoverIntent.minified.js")'  type="text/javascript"></script>
<script src='@Url.Content("~/Scripts/jquery.dcjqaccordion.2.7.min.js")' type="text/javascript"></script>

これが役立つことを願っています!!

于 2012-10-07T11:02:24.313 に答える
0

ASP.NET MVC3 では、次を使用する必要があります。

@Url.Content("~/path/to/file/from/root")

srcスクリプトタグの属性で

于 2012-10-07T11:04:19.720 に答える
0

私は自分のコードにこの行を追加し、うまくいきました...

    <script src="@Url.Content("/Scripts/Admin/jquery-1.8.2.min.js")"
     type="text/javascript"></script>

皆さんありがとう...

于 2012-10-17T17:00:15.820 に答える