Вопрос

У меня есть <input type="file" onchange="isValidFile(this.value)" />.

function isValidFile(filename)
{
     if (getExtension(filename)!=srt)
     {
          //Don't load the file
     }
}

При загрузке файла этикетка <input type="file" /> Изменить на имя файла, показывают, что файл загружается/выбран, я хочу, если у файла неправильное расширение не загружать его и оставить метку пустым. Я пытался изменить значение, но прочитал здесь что это невозможно по соображениям безопасности.

Это было полезно?

Решение

<form name="abc">
    <input type="file" onchange="isValidFile(this.value)"/>
</form>

<script>
    function isValidFile(filename) {
        if (getExtension(filename) != 'jpg') {
            document.forms['abc'].reset();
            alert("invalid Image");
        }
    }
    function getExtension(filename) {
        return filename.substring(filename.lastIndexOf('.') + 1);
    }
</script>

Попробуй это

Другие советы

Почему бы вам не использовать плагин проверки пользовательского интерфейса jQuery для проверки файла типа ввода?

http://jqueryvalidation.org/accept-method/

Пожалуйста, проверьте URL для получения дополнительной информации.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top