【发布时间】:2012-12-20 15:01:21
【问题描述】:
我的网页中有一个文件输入,允许用户上传图片。
我进行了一些设置,以便当他们选择图像时,会触发文件输入的更改事件并向他们显示图像的预览。
有时,一旦他们看到预览,他们想在本地稍微调整一下图像(例如,使用绘画来裁剪它)。然后他们点击 save in paint 并点击文件输入并再次选择文件。
问题在于,当他们再次选择文件时,即使图像数据已更改,并且如果他们尝试将文件上传到我的服务器,则会使用旧的图像数据,但不会触发输入的更改事件。
有什么方法可以检测用户何时实际选择文件,而不是何时发生文件输入更改事件,以便我可以很好地处理这种情况?
编辑:请注意,每次用户选择图像时,我都可以删除并重新创建文件输入,这是可行的,但这意味着文件输入显示“未选择文件”,这会让用户感到困惑。
【问题讨论】:
-
您不必删除并重新创建输入,只需重置其值:$('input').val('');
-
如果重新上传图片,数据应该和旧的不一样。
-
@Cristi Pufu,我认为在 onclick 事件中这样做可能正是我需要的,谢谢。
标签: javascript html file-upload