-1

プロジェクトで画像のjavascriptを使用して標準パスを取得しようとしています。以下のように画像にsrcを使用しました

document.testImg.src = '../Images/test.png';

パスの一貫性を保つために、以下のようなオプションはありますか?

document.testImg.src = '@Url.Content(~/Images/test.png)';


<img name="testImg">

前もって感謝します

4

3 に答える 3

2

ご存じのとおり、スクリプトが Razor ビューの一部でない限り、Javascript で Razor を使用することはできません。これは「最もセクシーな」方法ではありませんが、レイアウト ビュー/マスターページに「グローバルな」javascript URL 変数を設定するのが 1 つの方法です。

たとえば、共有レイアウトには変数があります。

var AppUrl = '../Content/Images/';

したがって、すべてのビューで、この一貫した変数を使用できます。

var myImageUrl = AppUrl + 'image.jpg';

ps 変数を使用したくないですか? 代わりに、共有ビューに関数を貼り付けます。

たとえば、共有レイアウトには次の関数があります。

function AppURL(url)
{
 return '../Content/Images/' + url;
}

したがって、すべてのビューでこれを使用できます。

var myImageUrl = AppUrl('image.jpg');
于 2013-05-16T20:13:36.400 に答える
0

これに対する良い解決策を見つけました。プロジェクトに t4mvc を使用し、すべてのマジック ストリングを更新しました。このソリューションは、パスに問題がある少数の開発者にとって役立つと思いました。

于 2013-10-28T19:12:22.007 に答える