Получить путь к изображению - PullRequest
2 голосов
/ 21 декабря 2009

Я написал метод javascript для динамического отображения изображения в зависимости от того, установлен плагин или нет. В зависимости от страницы, URL может быть глубоко в подпутях, и я хотел посмотреть, смогу ли я получить путь к изображению без всякой маркировки.

* ** 1003 тысяча два * Пример

myImage src location = {root} /Content/Images/myImage.png

Теперь позвоните в js, чтобы отобразить изображение на следующих страницах. Я показываю путь к странице примера и элемент изображения с путем src. Обратите внимание, как все по-другому, в зависимости от того, насколько мы глубоки. Если я использую абсолютный путь, мне придется изменить его для моей тестовой среды и производства. Я думал, что смогу использовать ~, но думаю, что нет. Идеи?

http://mysite.com/sub1/sub2/ - <img src="../../Content/Images/myImage.png" />

http://localhost:2500/sub1/ - <img src="../Content/Images/myImage.png" />

1 Ответ

3 голосов
/ 21 декабря 2009

Тильда относится только к коду .NET на стороне сервера.

Простой способ выполнить то, что вы ищете, - записать корневой путь в переменную или функцию javascript.

Например, на стороне сервера на вашей странице:

public string RootPath
{
  get
  {
     return ResolveUrl("~/");
  }
}

А затем используйте следующий javascript:

<script type="text/javascript">
<!--
function getRoot()
{
   return '<%= RootPath %>';
}
// -->
</script>

Затем вы можете использовать функцию getRoot javascript, чтобы получить доступ к корню веб-сайта и использовать его для ваших URL.

...