当我选择图像时,有时它不会显示,但当我第二次单击时,图像会显示。
jQuery
$('#morefiles').change(function (event) {
if (!(/\.(gif|jpg|jpeg|tiff|png)$/i).test($(this).val())) {
$ionicPopup.alert({
title: 'Message',
template: 'You must select an image file only !'
});
$('#morefiles').val('');
} else {
var obj = {};
obj.key = event.target.files[0];
obj.value = URL.createObjectURL(event.target.files[0]);
$scope.items.push(obj);
console.log(JSON.stringify(obj));
$('#morefiles').val(obj);
}
});
HTML
<input type="file" multiple="" id="morefiles" accept="image/*" >
如何解决这个问题?当用户选择图像时,我需要当时显示该图像。提前致谢。
最佳答案
好的。我找到你了..添加这一行:
$scope.$apply();
您的代码如下:
$('#morefiles').change(function (event) {
if (!(/\.(gif|jpg|jpeg|tiff|png)$/i).test($(this).val())) {
$ionicPopup.alert({
title: 'Message',
template: 'You must select an image file only !'
});
$('#morefiles').val('');
} else {
var obj = {};
obj.key = event.target.files[0];
obj.value = URL.createObjectURL(event.target.files[0]);
$scope.items.push(obj);
$scope.$apply()
console.log(JSON.stringify(obj));
$('#morefiles').val(obj);
}
});
我也遇到这个问题了。不过是这样解决的。我不知道为什么我需要这样做 $scope.$apply();
。我没有足够的时间来挖掘这些东西。如果有人知道原因,欢迎评论我的回答。
关于javascript - 使用 jQuery 显示图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33951659/