отправка, когда событие onchange инициируется для элемента ввода с типом «файл» - PullRequest
1 голос
/ 01 июля 2011

Я пытаюсь отправить форму, используя событие onchange элемента ввода с типом file, но проблема в том, что вместо этого отправляется пустая форма, даже если выбран файл.

вот код:

var form = document.createElement("form");
form.action="http://localhost:8084/upload/image";
form.method="post";
form.enctype ="multipart/form-data";
form.target="upload_target";

var input=document.createElement("input");
input.type="file";
input.accept="image/jpeg, image/gif, image/png";
input.onchange=function(ev){this.form.submit()};
form.appendChild(input);

Форма отправляется правильно при нажатии кнопки отправки, но не при изменении состояния «ввода файла».

Есть ли способ достичь того, что я пытаюсь сделать?

1 Ответ

0 голосов
/ 01 июля 2011

Вы получаете ошибку?

У вас есть синтаксическая ошибка. Эта строка:

input.onchange=function(ev){this.form.submit());

Должно быть

input.onchange=function(ev){this.form.submit()};

Кроме того, какой браузер вы используете, потому что этот метод для перехвата события не будет работать во всех из них (например, не современный IE:))

...