Javascript 正在删除JS无法正常工作的损坏图像框。轨道4

Javascript 正在删除JS无法正常工作的损坏图像框。轨道4,javascript,jquery,ruby-on-rails,carrierwave,Javascript,Jquery,Ruby On Rails,Carrierwave,我已经创建了一个方法,可以用正在上载的Carrierwave图像自动填充视图。但是,当我使用它时,默认情况下会显示断开的图像框。我添加了一个JS函数,可以在检测到损坏的图像框时将其删除。唯一的问题是调用方法后图像不会重新填充视图。我将在下面发布JS代码 post.js $(document).ready(function () { $(function () { function readURL(input) { if (input.files && in

我已经创建了一个方法,可以用正在上载的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();
      });
    });
  });
});

使用
变量

$('img').error(function () {
    $(this).remove();
});

当不存在图像时,断开的图像标记将消失,但当照片实际排队等待上载时,该函数不会运行其余代码。(图像不会重新填充视图)