6

JavaScript バンドルを別のフォルダー (Script フォルダー以外) から動作させるにはどうすればよいですか。私がこれを行う場合:

bundles.Add(new ScriptBundle("~/bundles/search").Include("~/Views/Search/*.js"));

ブラウザは、javascript ファイルが見つからないことを教えてくれます。これを行うことは可能ですか、それともすべてのスクリプトを Scripts フォルダーに配置する必要がありますか?

基本的に、View サブフォルダーに Javascript を含めたい

4

3 に答える 3

3

この回答に従ってフォルダーを変更する必要があります: web.configIn ASP.NET MVC, how can I load script from my view folder?Views

アシュリー・リーの良い例:

<system.webServer>
  <handlers>
    <add name="JavascriptViewHandler" path="*.js" verb="*"
        preCondition="integratedMode" type="System.Web.StaticFileHandler" />
    <remove name="BlockViewHandler"/>
    <add name="BlockViewHandler" path="*" verb="*"
      preCondition="integratedMode" type="System.Web.HttpNotFoundHandler" />
  </handlers>
</system.webServer>
于 2014-12-16T07:06:10.020 に答える
1

~/Views/web.config具体的には JavaScript ファイルのみを含める必要があるため、「JavascriptViewHandler」セクションを追加して、ファイルに次の変更を加えます。

<system.webServer>
  <handlers>
    <add name="JavascriptViewHandler" path="*.js" verb="*"
        preCondition="integratedMode" type="System.Web.StaticFileHandler" />
    <remove name="BlockViewHandler"/>
    <add name="BlockViewHandler" path="*" verb="*"
      preCondition="integratedMode" type="System.Web.HttpNotFoundHandler" />
  </handlers>
</system.webServer>

これにより、JavaScript 以外のファイルに対する現在のすべてのブロックが維持されます。

于 2014-12-17T04:21:40.010 に答える