Рейтинг:
2
F-ES Sitecore
Использовать @URL-Адрес.Содержание
<img src="@Url.Content("~/images/abc.jpg")"/>
vickyc049
для cshtml это нормально,но я хочу дать путь в файле javascript
F-ES Sitecore
Я бы попробовал использовать относительные пути, но если вы не можете использовать относительные пути, вам нужно будет определить путь к изображению в переменной js в представлении;
& lt;скрипт>
var myImgPath = ' @Url. Content ( ... )';
< / script>
затем в вашем js файле вы используете эту переменную;
$("#myimg"). attr ("src", myImgPath);
Рейтинг:
1
Ankur\m/
Решение, предложенное F-ES Sitecore, будет работать на вас. Я просто добавляю еще немного информации для вашего понимания.
/images/abc.jpg
Косая черта (/)
в начале указывается путь от корня сайта. Так как ваш сайт www.test.com, / images вернет этот путь - www.test.com/images.
Нет никаких проблем, если мы размещаем наше приложение на веб-сайте (обычно это делается в производственной среде). Но в локальной системе мы обычно указываем наш веб-сайт на приложение под веб-сайтом по умолчанию, так как тогда нам не нужно создавать никаких записей хоста домена. В таких случаях относительные пути создают проблемы. Тильда ( ~ ) приходит нам на помощь. В ASP.NET использование Page. ResolveUrl для пути, начинающегося с~, даст нам путь, специфичный для нашего приложения. В MVC мы можем сделать то же самое с помощью Url.Content
Надеюсь, это даст вам некоторые разъяснения.
vickyc049
Привет, Thnaks для решения ur. но есть еще одно изображение, которое приходит из css-файла. используя свойство background-image. ~ не работает ни для одного файла css или javascript.я уже пробовал.на самом деле ~ работать с серверной стороной
Ankur\m/
Вы правы, ~ не может быть использован в CSS-файлах. Вы можете указать относительный путь в ваших CSS-файлах. Например, скажем, ваши CSS-файлы находятся внутри папки CSS, расположенной в том же месте, что и папка images, Вы можете указать путь как ../images/abc.jpg в вашем css-файле для ссылки на изображения внутри папки images.