IE jQuery запускает форму клика вручную, доступ запрещен
У меня есть форма для загрузки изображения с jQuery
форма. Everting это нормально, но когда я хочу, чтобы триггер типа ввода файла, нажмите после выбора файла, в IE ONLY
возвращает эту ошибку: access is denied
$('#imageform #photoimg').trigger('click'); or setTimeout(function(){$('#imageform #photoimg').trigger('click')},1000);
$('#photoimg').live('change',function()
{
//$("#preview").html('');
//$("#preview").html('<img src="loader.gif" alt="Uploading...."/>');
$("#imageform").ajaxForm(
success: function(out) {
var imageur = out;
// do tiny work with out;
}
}).submit();
});
Где проблема и как я могу ее решить?
2 ответа
Решение
По умолчанию IE не позволяет инициировать изменение элемента файла.
Если вы хотите эту функцию, можете использовать http://ajaxuploader.com/ или fileuploader:
var uploader = new qq.FileUploader({
// pass the dom node (ex. $(selector)[0] for jQuery users)
element: document.getElementById('file-uploader'),
// path to server-side upload script
action: '/server/upload'
});
Я прокомментировал эти строки в j query.form.js, тогда все у меня хорошо работает. Не спрашивайте меня о причине, даже если у меня нет решения для этого, но оно работает точно.
if (io.contentWindow.document.execCommand) {
try { // #214
io.contentWindow.document.execCommand('Stop');
} catch(ignore) {}
}