【问题标题】:How to deselct something when selected previously in FileField Django Form?以前在文件字段 Django 表单中选择时如何取消选择某些内容?
【发布时间】:2012-07-25 22:28:17
【问题描述】:

我有一个包含文件字段的表单来上传一些文件。 有时会发生什么,一开始,我从浏览中选择一个文件来上传,但后来我意识到我不想再上传它了。我怎样才能让它再次为空? 是不是这个字段填了就不能回空了??

提前致谢

【问题讨论】:

    标签: django django-forms filefield django-uploads


    【解决方案1】:

    如果您尝试发布未经验证的表单,当您重新呈现表单时,文件字段将为空。

    请参阅此问题以获取更多说明。 Django Form File Field disappears on form error

    以下内容对我有用。在您的 html 中添加一个清除按钮

    <input type="submit" name = "submit-clear" value="clear file">
    

    然后在您的视图中使用...处理此按钮。

    if 'submit-clear' in request.POST:
        return HttpResponseRedirect('')
    

    这应该清除所有文件字段,但也会删除用户所做的任何其他设置,如果您想保留其他设置并仅删除文件字段,请确保表单不会以某种方式验证以便再次呈现。

    【讨论】:

      【解决方案2】:

      这可以用javascript来完成。

      引用来自electrictoolbox.com 的Clear upload file input field with jQuery 帖子:

      函数 reset_html(id) { $('#'+id).html($('#'+id).html()); }

      $(document).ready(function() {

      var file_input_index = 0;
      $('input[type=file]').each(function() {
          file_input_index++;
          $(this).wrap('<div id="file_input_container_'+
                        file_input_index+'"></div>');
          $(this).after('<input type="button" value="Clear" 
                         onclick="reset_html(\'file_input_container_'+
                                               file_input_index+'\')"
                         />');
      });
      

      });

      【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-05-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-05-18
      • 1970-01-01
      • 2015-11-08
      • 2011-06-08
      相关资源
      最近更新 更多