我有一个input type=file
可以在Chrome上正常运行,但是当我在Internet Explorer 9上尝试它时,点击该按钮不起作用,但如果我刷新页面它将起作用。如果我在那之后再试一次,那就再也不行了......
HTML
<div class="input-group">
<span class="input-group-btn">
<span class="btn btn-primary btn-file">
Browse <input type="file" id="inputLogo" />
</span>
</span>
<input type="text" class="form-control" readonly ng-model="logoName" id="logoName" />
</div>
CONTROLLER(ANGULARJS)
$("#inputLogo").fileReader({
filereader: "js/lib/FileReader/filereader.swf"
});
$("#inputLogo").on('change', function (e) {
var image = e.target.files[0];
console.log("IMAGE:" + image);
$scope.logoName = image.name;
var filereader = new FileReader();
filereader.onload = function (e) {
var custLogo = e.target.result;
while (custLogo.charAt(0) != "4") {
custLogo = custLogo.substr(1);
}
custLogo = custLogo.substr(1);
custLogo = custLogo.substr(1);
$scope.logoBase64 = custLogo;
}
filereader.readAsDataURL(image);
});
修改
当我点击“浏览”按钮时没有任何反应。没有对话框弹出,没有控制台错误。
一切都在另一页上很好用。
我在这两者之间看到的唯一区别是,在马车上我的输入是在表格行中而且表格在ng-show
(angularjs)
答案 0 :(得分:0)
如果您第二次尝试选择相同的文件,则不会触发更改事件,因为该值不会更改。您必须在第一次之后重置输入值:
e.target.value = '';