父事件不起作用

时间:2013-11-30 09:58:45

标签: html events

我有一个标签元素用于输入文件,该文件具有默认的单击事件以打开文件选择对话框。这是用于图像上传。上传后,上传的图像显示在标签内,如果用户想要更改照片,他/她点击照片(或按钮子元素)并重新打开对话框。我的问题是,在图片上传后,如果用户点击图片,对话框将无法在IE 8中打开 (默认的父标签事件)。我的代码是:

<label class="fileinput fileinput-new" data-provides="fileinput" style="cursor: pointer;width: 200px;">
    <input type="file" name="photo_2" style="position: absolute;left:-9999px">
    <div class="fileinput-preview thumbnail" data-trigger="fileinput" style="width: 200px; height: 130px;background:url(http://localhost/project/assets/images/upload_a_photo.png) no-repeat center center;cursor: pointer">
    <img width="190px" height="116px" src="http://localhost/project/uploads/394230a6519aae0d21170d6a409e5010.jpg">
    </div>
    <button type="button" class="btn btn-default btn-block">Default</button>
    <button type="button" class="btn btn-danger btn-block">Primary</button>
</label>

JSBIN:

http://jsbin.com/uXequYa/1

它不能包含任何用于调用父事件的JS代码,因为IE会阻止以这种方式更改输入值。

1 个答案:

答案 0 :(得分:0)

你需要

<label for="ID_OF_YOUR_INPUT_EL" ...

<input  type="file" id="ID_OF_YOUR_INPUT_EL" ...