質問

きっかけで仕事を少し修士のページ、ASP.net mvcサイトと私はだ疑問です。私がリンクスタイルシートのマスターのページで更新へのパスシートを修正。をコードしていま

<link href="../../Content/Site.css" rel="stylesheet" type="text/css" />

もみのソースのページで供給するブラウザを取得しま

<link href="Content/Site.css" rel="stylesheet" type="text/css" />

である。しかし同じパスの翻訳な作業のためのスクリプトファイルです。

<script src="../../Content/menu.js" type="text/javascript"></script>

け出ておいしかったです。い作業でもトップレベルのページが思いのブラウザwebサーバー修正マエラーになります。がわかりやすく伝えるため、srcになりますglobbedもあるのですか?

役に立ちましたか?

解決

<script src="<%= ResolveClientUrl("~/Content/menu.js") %>" type="text/javascript"></script>

他のヒント

作延長方法。この方法:

public static string ResolveUrl(this HtmlHelper helper, string virtualUrl)
{
    HttpContextBase ctx = helper.ViewContext.HttpContext;
    string result = virtualUrl;

    if (virtualUrl.StartsWith("~/"))
    {
        virtualUrl = virtualUrl.Remove(0, 2);

        //get the site root
        string siteRoot = ctx.Request.ApplicationPath;

        if (!siteRoot.EndsWith("/"))
            siteRoot += "/";

        result = siteRoot + virtualUrl;
    }
    return result;
}

すでに一時的に保存してからスクリプトのrefのように:

<script type="text/javascript" src="<%= Html.ResolveUrl("~/Content/menu.js")%>"></script>

この代わり:

<link href="~/Content/Site.css" rel="stylesheet" type="text/css" />

または利用できるBASEタグの頭部のページです。すべてのリンクをしてからの相対位置で入力した"基盤"のタグとか使用"../../"をベースに"~"。を除くリンクによるCSSファイル(url等)、リンク元の内容やリンクの相対位置のcssファイルです。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top