我试图从另一个内部网站点获取用户的缩略图,但其中一些不遵循预定义的格式,这意味着我想要加载默认缩略图。
检查图片网址是否有效的最佳方法是什么?
答案 0 :(得分:9)
根据您获取图片的方式,这可能会有所不同
<html>
<body>
<img src="<dynamic handler url>" alt="My Username" onError="this.src='defaultProfile.jpg';" />
</body>
</html>
这是你在ASP.NET中的方法。
设计师 -
<asp:Image ImageUrl="NonexistentImage.Jpg" ID="profileImage" Height="50" Width="50" runat=server />
代码背后(c#)
profileImage.Attributes["onerror"] = "this.src='http://www.cs.uofs.edu/~olivetoj2/blah.jpg';";
这对我来说很有效。
答案 1 :(得分:2)
WebRequest webRequest = WebRequest.Create(url);
WebResponse webResponse;
try
{
webResponse = webRequest.GetResponse();
}
catch //If exception thrown then couldn't get response from address
{
return 0;
}
return 1;
答案 2 :(得分:2)
你可以很容易地在jQuery中实现这一点。
$("#myImage")
.load(function() { alert("it loaded ok") })
.error(function() { $(this).attr("src", alternateImage) });
答案 3 :(得分:0)
从代码隐藏检查
File.Exists(Server.MapPath("file path"))
如果返回true,则分配值,否则分配默认缩略图。