AjaxForm очистить элемент ввода файла - PullRequest
2 голосов
/ 31 августа 2011

У меня есть HTML-форма, которую я превратил в ajaxForm с помощью вызова ajaxForm ({...}).Одним из элементов является fileInputElement.Кроме того, я интегрировал MultiSelector ( MultiSelector Source ).Когда элемент ввода изменяется, я делаю некоторую проверку, чтобы убедиться, что пользователь выбрал файл, который соответствует тому, что он пометил на веб-странице.У меня проблема в том, что если пользователь выбирает плохой файл, я возвращаю false, но тогда элемент ввода файла все еще указывает на «плохой» файл, который выбрал пользователь.Я бы хотел предотвратить это или очистить после возвращения false.Любые идеи?

Для справки, простое изменение значения элемента ввода файла не допускается по соображениям безопасности.Я попробовал уловку «innerHTML», чтобы установить для себя innerHTML, но это тоже не сработало.

Ответы [ 2 ]

4 голосов
/ 31 августа 2011

Быстрое решение JS - просто замените его новым (не идеально, но должно работать):

Что-то в этом роде:

HTML:

<div id="some_file_field_wrapper">
    <input type="file" />
</div>

JavaScript:

var file_html = '<input type="file" />';
var elem_id   = 'some_file_field_wrapper';
document.getElementById( elem_id ).innerHTML = file_html;
2 голосов
/ 31 августа 2011

вот пост, объясняющий, как сделать то же самое с помощью jquery ..: http://www.electrictoolbox.com/clear-upload-file-input-field-jquery/

надеюсь, это поможет ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...