wes*_*Kid 0 ajax jquery image src
我正在尝试根据系统上是否存在与数据库条目对应并用 id 作为其名称的一部分标识的图像来加载两个不同的缩略图图像之一。
为了清楚起见,稍微简化一下,如果名为 {id}-thumb.png 的特定图像存在,那么我想使用 jQuery 将其名称加载到 HTML 的 src 中。如果图像不存在,我想加载一个名为thumbnail.png 的通用缩略图图像。
这是我到目前为止:
var image_path = id + "-thumb.png";
$.ajax({
url: image_path,
type: "HEAD",
error: function() {
$("li#" + id + " .thumbnail").attr("src","thumbnail.png");
},
success: function() {
$("li#" + id + " .thumbnail").attr("src",id + "-thumb.png");
}
});
Run Code Online (Sandbox Code Playgroud)
然后我通过建立一个字符串变量 list_item 来生成要插入的新 HTML
var list_item = "<li id='" + id + "'>";
list_item += "<figure>";
list_item += "<img class='thumbnail' src=''></a>";
list_item += "</figure>";
Run Code Online (Sandbox Code Playgroud)
最后,我将这个新的 list_item 变量添加到现有的 ul 中:
$(".list ul").prepend(list_item);
Run Code Online (Sandbox Code Playgroud)
但是我没有得到图像并且查看生成的 HTML,src 是空的。
任何想法都非常感谢!
如果图像不存在,您可以使用“onerror”参数。像这样生成图像标签:
<img src="something.jpg" onerror="this.src='something_else.jpg'" />
Run Code Online (Sandbox Code Playgroud)