1

我不知道如何修改jQuery Blueimp 文件上传插件 jquery.fileupload-ui.js以便删除按钮只删除文件而无需先选中复选框。

有人可以帮我弄清楚如何做到这一点吗?

这是 jquery.fileupload-ui.js 代码,它似乎需要某种修改:

 fileUploadButtonBar.find('.delete')
            .bind('click.' + ns, function (e) {
                e.preventDefault();
                filesList.find('.delete input:checked')
                    .siblings('button').click();
                fileUploadButtonBar.find('.toggle')
                    .prop('checked', false);
            });
        fileUploadButtonBar.find('.toggle')
            .bind('change.' + ns, function (e) {
                filesList.find('.delete input').prop(
                    'checked',
                    $(this).is(':checked')
                );
            });
4

2 回答 2

2

我遇到了同样的问题,解决方案非常简单。

1.您必须从 html 中删除所有输入复选框。
2.为删除所有按钮添加一个类(我使用了deleteAll)。
3.每个删除按钮都有一个 class="delete" 所以..
4.当单击顶部的删除按钮时,为每一行激活该按钮。

//delete all photos when click top Delete all button
$('.deleteAll').click(function(){
  $('.delete').each(function(){
    $(this).click();
  });
});
于 2014-01-11T20:25:33.267 回答
1

好的,我解决了我自己的问题。checked="checked"解决方案是在渲染这些元素之前在模板和 HTML 中设置复选框属性。尝试使用 Javascript 单击按钮检查复选框对我不起作用,可能与调用堆栈有关。

无论如何,这是代码。而template-download不是这个:

<input type="checkbox" name="delete" value="1">

做这个:

<input type="checkbox" name="delete" value="1" checked="checked">

和中删除按钮旁边的复选框fileuploadBar,而不是这个:

<input type="checkbox" class="toggle">

做这个:

<input type="checkbox" class="toggle" checked="checked">

如果您这样做,则单击任何删除按钮将删除文件(即,一步而不是两步)。

于 2012-08-09T21:54:26.953 回答