小编eth*_*her的帖子

第二次使用输入文件不再触发onchange

我有一个图片上传按钮,当从浏览窗口中选择时,它会自动上传文件.
尽管如此,它第二次不起作用,这是因为没有触发onChange事件.为什么会这样?

以下是一个用例:
1.单击该按钮,我调用uploadMessagePicture(),打开浏览窗口.
2.当用户选择了图像,则检测到onChange事件,其触发ajaxFileUpload(),并显示照片编辑器区域.
3.上传完成后,将显示图像预览.4.用户通过调用deleteMessageImage()(其也清除字段和隐藏照片编辑器)删除图象.
5.用户尝试上传另一张图片.

在这一点上,出现浏览窗口,但是当我选择图片,则不会触发onChange事件所以什么也不会发生.(此外,它似乎并不像文件名,甚至转移到输入"值字段.)
我使用的是Firefox 23.0.1

这是HTML:

<a class="im-photo-btn" href="javascript:;" onclick="javascript:uploadMessagePicture();"><i class="icon-join-photo"></i></a>

<div class="editor-photoarea" id="editor-photoarea" style="display:none;">
    <input name="image_message_file" type="hidden" id="image_message_file" value="" />
    <div id="image_message_upload">
        <input name="image-message" type="file" id="image-message" style="display:none; visibility:hidden;" /> 
        <!-- hide it and trigger it from the photo btn (need both display:none + visibility:hiden for browser compatibility) -->
    </div>
    <div class="loading" id="image_message_loading" style="display:none;"><img alt="<?php echo $lang["Loading"];?>" src="lib/immedia/img/ajax-loader.gif" /> <?php echo $lang["Loading"];?></div>
    <div class="preview" style="display:none;" id="image_message_preview">
        <!-- <div>Image preview :</div>
        <div id='small_message_msg'></div>
            <img src='' /> …
Run Code Online (Sandbox Code Playgroud)

html javascript jquery file-upload

14
推荐指数
6
解决办法
1万
查看次数

标签 统计

file-upload ×1

html ×1

javascript ×1

jquery ×1