我创建了一个方法,可以使用正在上传的Carrierwave图像自动填充视图。但是,我使用它时默认显示损坏的图像框。我添加了一个JS函数,可以在检测到时删除损坏的图像框。唯一的问题是在调用方法后图像不会重新填充视图。我将在下面发布JS代码。
post.js
$(document).ready(function () {
$(function () {
function readURL(input) {
if (input.files && input.files[0]) {
var reader = new FileReader();
reader.onload = function (e) {
$('#img_prev').attr('src', e.target.result);
};
reader.readAsDataURL(input.files[0]);
}
}
//Add uploaded image to placeholder.
$("#img-upload").change(function () {
$('#img_prev').removeClass('hidden');
readURL(this);
//Remove Broken Image
$('img').error(function () {
$('img[src="' + $(this).attr('src') + '"]').remove();
});
});
});
});
答案 0 :(得分:0)
使用this
变量。
$('img').error(function () {
$(this).remove();
});