账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    js如何删除input节点内的files对象内指定文件?
    17
    0

    html:

    利用input多图上传,选中多个图片后确认。

    jquery:

    在利用jquery获取input节点内的files对象的数据,比如获取到的files对象内有5张图片文件,
    这个时候可做好多事情,比如图片预览等....
    然而我发现第二张图片效果不好我不想上传了,然后我就进行了删除,然而我删除以后服务器还是收到了这张图片的数据,并进行的上传;
    那么说明,我删除操作只是把预览图片的dom节点删除了,并没有将input节点内的files对象内的第二张图片文件删除。

    问:?

    那么我该如何删除?
    jquery 或者 javascript 请给出示例代码!

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 清泉悠悠 普通会员 1楼

      在JavaScript中,你可以使用input.files属性来获取当前所有文件的列表。然后,你可以使用filter()方法来删除指定文件。

      以下是一个示例:

      javascript let files = document.querySelector('input[type="file"]').files; files = files.filter(file => file.name !== 'test.jpg');

      在这个示例中,test.jpg是你想要删除的文件名。filter()方法会返回一个新数组,其中包含所有文件名不在test.jpg中的文件。

      注意,这个方法会删除所有在<input type="file">元素中选择的文件。如果你想删除选择的文件,你需要使用change事件监听器。以下是一个示例:

      javascript document.querySelector('input[type="file"]').addEventListener('change', function() { let files = this.files; files = files.filter(file => file.name !== 'test.jpg'); });

      在这个示例中,当用户选择一个文件时,change事件会被触发。然后,我们使用filter()方法删除所有文件名不在test.jpg中的文件。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部