我正在研究VS2010 asp.net MVC项目,并使用以下jQuery调用动态更改图像/图标。
<div class="icon-button"><img src="~/Images/Umark_Icon.png" class="image-class" /></div>
<script>
$(document).on("click", ".iconl-button", function () {
$(this).find('img').attr("src", "~/Images/Mark_Icon.png");
});
</script>
或者我也试过
$(this).html('<img src="~/Images/Mark_Icon.png" class="image-class"/>');
如果图像src或整个图像被相对路径替换为“〜/ image_path”,则它不适用于波浪号。
仅适用于“../ image_path”。
它不适用于“../../image_path”,我相信,但不确定,是由于图像文件夹的深度。
最后,我希望它与“〜/”选项一起工作,我认为该选项最适合这种情况。
请对此主题的任何评论,建议和演示对我都非常有帮助。
感谢。
答案 0 :(得分:1)
~/
不是有效的网址路径。路径要么必须是绝对URL,要么是相对URL才能在图像标记中起作用。据我所知,您有以下选项:
/foo
- 相对于主机的根
foo
或./foo
- 相对于当前网址
//host.com/foo
或protocol://host.com/foo
- 绝对网址
答案 1 :(得分:0)
var ImageURL = '<%=ResolveClientUrl("~/Images/Mark_Icon.png")%>';
$(this).find('img').attr('src', ImageURL );