1

ビューにスクリプトを追加するには、通常、次のような作業が必要です。

<script src="../../Scripts/jquery-1.3.1.min.js" type="text/javascript"></script>

残念ながら、アプリが IIS 6 の仮想ディレクトリにデプロイされている場合、これは機能しませ

仮想ディレクトリにアプリを展開する機能を失うことなく、これを回避して IntelliSense を機能させる方法はありますか?

4

5 に答える 5

3

展開コードの場合、Google ajax API を使用して JQuery をロードできます。google CDNを利用することでページの読み込み時間が短縮されるのでおすすめです。

インテリセンスを取得するには、これをページに追加します

<% if(false){ %>
    <script src="../../Scripts/jquery-1.3.1.min.js" type="text/javascript"></script>
<%}%>

これは if(false) 内にあるため出力されませんが、インテリセンスはそれを認識します

于 2009-03-16T11:00:44.290 に答える
1

Visual WebDeveloperTeamブログJScriptIntelliSenseFAQを確認してください。コメントはまた、Srullyのトリックを参照しています。if(false)

于 2009-03-27T00:52:16.770 に答える
1

私は次のようなものを使用します:

   <script src="<%= ResolveUrl("~/Content/jquery-1.2.6.js") %>" type="text/javascript"></script>   

   <%--<script src="../../Content/jquery-1.2.6.js" type="text/javascript"></script>--%> 

次に、インテリセンスを使用する場合は、2番目の参照のコメントを解除する必要があります。それは迷惑ですが、私が遭遇した唯一の回避策です。

于 2009-03-16T17:57:57.797 に答える
1

VS2010 では、仮想フォルダー/ディレクトリ内の "*vsdoc.js ファイルを参照し、CDN を使用せずに Intellisense をビューで適切に動作させる 1 つの方法は、単にアドレスで localhost を使用することです。仮想ディレクトリは、スクリプトを集中化するときに不可欠です。複数の Web アプリケーションのコンテンツ ファイル. 以下の例では、IIS 7.5 で "Shared" 仮想ディレクトリを作成しました. これが誰かの役に立てば幸いです.

@if (false)
{
   <script src="http://localhost/Shared/jQuery/js/jquery-1.7.2-vsdoc.js" type="text/javascript"></script>
}
于 2012-06-05T19:52:21.673 に答える
0

HtmlHelper 拡張機能を作成しました (PathReference は ReSharper の JetBrains.Annotations 属性であり、省略できます):

public static class HtmlHelperExtensions
{
    public static MvcHtmlString Script(this HtmlHelper html, [PathReference]string scriptFile)
    {
        var filePath = VirtualPathUtility.ToAbsolute(scriptFile);
        return new MvcHtmlString("<script type=\"text/javascript\" src=\"" + filePath + "\"></script>");
    }
}

次に、マスターページでこれを行います

<%
    if (false)
    {
%>
    <script src="../../Scripts/jquery-ui-1.8.9.custom.min.js" type="text/javascript"></script&gt;
<%
    }
%>
<%:Html.Script("~/Scripts/jquery-ui-1.8.9.custom.min.js")%>

これで、インテリセンスと正しいランタイム参照の両方が得られました。

(トリックをしてくれたSrulyに感謝しますif(false)

于 2011-02-16T11:23:22.707 に答える