プロジェクトで画像のjavascriptを使用して標準パスを取得しようとしています。以下のように画像にsrcを使用しました
document.testImg.src = '../Images/test.png';
パスの一貫性を保つために、以下のようなオプションはありますか?
document.testImg.src = '@Url.Content(~/Images/test.png)';
<img name="testImg">
前もって感謝します
プロジェクトで画像のjavascriptを使用して標準パスを取得しようとしています。以下のように画像にsrcを使用しました
document.testImg.src = '../Images/test.png';
パスの一貫性を保つために、以下のようなオプションはありますか?
document.testImg.src = '@Url.Content(~/Images/test.png)';
<img name="testImg">
前もって感謝します
ご存じのとおり、スクリプトが 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');
これに対する良い解決策を見つけました。プロジェクトに t4mvc を使用し、すべてのマジック ストリングを更新しました。このソリューションは、パスに問題がある少数の開発者にとって役立つと思いました。