选择“选择文件”按钮后预览 ImageField

Posted

技术标签:

【中文标题】选择“选择文件”按钮后预览 ImageField【英文标题】:Preview ImageField after "Choose File" button was selected 【发布时间】:2015-02-16 14:40:25 【问题描述】:

所以我有一个非常基本的表单,实现了ImageField

# form
class MyForm(forms.Form):       
    my_image = forms.ImageField(required=False)

# Model
class MyModel(models.Model):
    my_image = models.ImageField(upload_to="images", null=True, blank=True)

# view

my_model = MyModel.objects.create(
    my_image=cd['my_image'] )

工作正常,现在如何在用户按下“选择文件”按钮后立即预览图像?有什么方法可以用 Django 来完成,还是我应该使用 Ajax?

谢谢

【问题讨论】:

【参考方案1】:

这最好在客户端使用 javascript 完成。现在所有的现代浏览器都可以使用 html5 文件 API 来做到这一点。无需从服务器往返文件。

Previous *** answer

Related Mozilla documentation.

【讨论】:

以上是关于选择“选择文件”按钮后预览 ImageField的主要内容,如果未能解决你的问题,请参考以下文章

选择文件后如何显示文件预览?

在Vuejs上切换单选按钮后选定的文件消失

vue使用readAsDataURL实现选择图片文件后预览

单击预览后,如何在我的 React 应用程序上显示第二个和第三个按钮?

清晰表单布局中的 ImageField 预览

html file控件选择文件后立即预览 js实现