2013-07-15 4 views
6

私は、bundleconfig.csクラスを使用してアプリケーションにいくつかのjQueryスクリプトファイルを追加します。MVC 4スクリプトリファレンスを作成しないBundleConfig

bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
        "~/Scripts/jquery-{version}.js", 
        "~/Scripts/jquery-ui-{version}.js", 
        "~/Scripts/jquery.mCustomScrollbar.min.js", 
        "~/Scripts/jquery.mousewheel.min.js", 
        "~/Scripts/jtable/jquery.jtable.js")); 

私は私のアプリを実行して、ページのソースを確認すると、唯一のいくつかのスクリプトファイルのが参照されます

<script src="/Scripts/jquery-1.10.2.js"></script> 
<script src="/Scripts/jquery-ui-1.10.3.js"></script> 
<script src="/Scripts/jtable/jquery.jtable.js"></script> 
<script src="/Scripts/jquery-migrate-1.2.1.min.js"></script> 

は、なぜこれが起こってますか?私は手動で_Layout.cshtmlに直接スクリプト参照を追加することで問題を回避することができますが、それはほとんどベストプラクティスではありません。

+0

あなたはファイルが存在することを確認しており、あなたはその正確な相対URLを指す: 偽

<compilation debug="false" targetFramework="4.0" /> 

にコンパイルにdebug属性の値を変更するか、手動で有効にしてください?このようなほとんどの問題は、ファイルが見つからないためです。 – MartinHN

答えて

14

.min一部はすでにMVCによって処理される - それは自動的にの.jsデバッグモード用ファイルと.min.jsリリースモードのファイルが含まれます。

だけjquery.mCustomScrollbar.min.jsのunminifiedバージョンをダウンロードして、スクリプトディレクトリに入れ、その後、としてそれを参照します。それからでしょう jquery.mCustomScrollbar.js

bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
        "~/Scripts/jquery-{version}.js", 
        "~/Scripts/jquery-ui-{version}.js", 
        "~/Scripts/jquery.mCustomScrollbar.js", 
        "~/Scripts/jquery.mousewheel.js", 
        "~/Scripts/jtable/jquery.jtable.js")); 

MVCをデバッグ/リリース用の適切なスクリプトをロードしてください

+0

ありがとうブレード。あなたは頭の爪に当たったようだ。すべてのスクリプトのリファレンスが正しく組み込まれています。 – Swifty

+0

いいえ問題は、バンドルを使用して初めて私に起こった:) – CodingIntrigue

+0

ありがとう!これで私の尾を追うのに数時間かかりました....デモの明日:| – tg2

2

バンドルを有効にしなかった可能性があります。

BundleTable.EnableOptimizations = true; 
関連する問題