Форум программистов, компьютерный форум, киберфорум
Наши страницы
JavaScript
Войти
Регистрация
Восстановить пароль
 
Voka
206 / 198 / 110
Регистрация: 27.12.2010
Сообщений: 819
Записей в блоге: 1
#1

Проверка имен файлов в multiple форме добавления файлов - JavaScript

15.08.2013, 22:29. Просмотров 818. Ответов 4
Метки нет (Все метки)

Доброго времени суток.

Есть форма:
HTML5
1
<input name="files[]" id="files" multiple="true" type="file" onchange="file_valid()">
Есть проверка на формат файла(не чувствительна к регистру):
Javascript
1
2
3
4
5
6
7
8
9
10
function file_valid()
{
    var fullPath=document.getElementById('files').value;
    var blabla='.blabla';
    if(fullPath && fullPath.toLowerCase().indexOf(blabla.toLowerCase())!='-1')
    {
        files.value='';
        alert('Выбран формат не .blabla');
    }
}
Все работает как надо если последний файл был с форматом .blabla, т.е. если выбрать файлы 1.exe,2.dll,3.blabla то ошибки не будет.
А надо, что бы каждый файл проверялся на формат.
http://www.cyberforum.ru/javascript/thread1724904.html
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.08.2013, 22:29
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Проверка имен файлов в multiple форме добавления файлов (JavaScript):

Скрипт вывода имен файлов папки по возрастанию размера. Подскажите реализацию
var folderaddress = &quot;C:/&quot;; // имя папки из которой будет происходить считывание...

Проверка выбранных <option> в <select multiple>
Всем привет, есть такой селект: &lt;select id=&quot;Materials&quot; size=&quot;6&quot; multiple&gt;...

Проверка совпадения имен файлов
Здравствуйте. Макросом из Ворда сохраняю файл в нужную папку на диске. При...

Проверка имен файлов на соответствие определенной маске
Имеются сотни файлов, имена которых необходимо проверять на соответствие...

Проверка существования файлов, создание файлов и вывод содержимого файлов на принтер
Создать BAT-файл который поддерживает создание файлов проверку их и вывод на...

4
Voka
206 / 198 / 110
Регистрация: 27.12.2010
Сообщений: 819
Записей в блоге: 1
18.08.2013, 15:18  [ТС] #2
Проблема актуальна.
Пока не совсем понимаю где хранится список/массив выбранных файлов.
0
Voka
206 / 198 / 110
Регистрация: 27.12.2010
Сообщений: 819
Записей в блоге: 1
25.08.2013, 19:44  [ТС] #3
Проблема актуальна.
0
koza4ok
626 / 435 / 67
Регистрация: 19.09.2012
Сообщений: 1,633
26.08.2013, 13:13 #4
HTML5
1
2
3
4
5
6
7
8
9
    <div id="foo"></div>
      <form  action="1.php" onsubmit="return Validate(this);">
       <input type="file" name="file"/>
       <input type="submit" value="submit">
      </form>
        
<?php
 
?>
Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<script >
var _validFileExtensions = [".jpg", ".jpeg", ".bmp", ".gif", ".png"];
 
function Validate(oForm) {
    var arrInputs = oForm.getElementsByTagName("input");
    for (var i = 0; i < arrInputs.length; i++) {
        var oInput = arrInputs[i];
        if (oInput.type == "file") {
            var sFileName = oInput.value;
            if (sFileName.length > 0) {
                var blnValid = false;
                for (var j = 0; j < _validFileExtensions.length; j++) {
                    var sCurExtension = _validFileExtensions[j];
                    if (sFileName.substr(sFileName.length - sCurExtension.length, sCurExtension.length).toLowerCase() == sCurExtension.toLowerCase()) {
                        blnValid = true;
                        break;
                    }
                }
 
                if (!blnValid) {
                    alert("Sorry, " + sFileName + " is invalid, allowed extensions are: " + _validFileExtensions.join(", "));
                    return false;
                }
            }
        }
    }
 
    return true;
}
Добавлено через 1 час 38 минут
f.type http://www.html5rocks.com/ru/tutoria...ng-files-input
1
Voka
206 / 198 / 110
Регистрация: 27.12.2010
Сообщений: 819
Записей в блоге: 1
26.08.2013, 13:23  [ТС] #5
Спасибо.
Себе на сайт поставил немного измененный код:
Кликните здесь для просмотра всего текста

HTML5
1
2
3
<form action="1.php" method="post" enctype="multipart/form-data" onchange="return Validate(this);">
    <input type="file" name="file" id="files" multiple="true" accept="image/jpeg,image/png,image/gif">
</form>
Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
var _validFileExtensions=['.jpg','.jpeg','.bmp','.gif','.png'];
 
function Validate(oForm)
{
    var arrInputs=oForm.getElementsByTagName("input");
    for(var i=0;i<arrInputs.length;i++)
    {
        var oInput=arrInputs[i];
        if(oInput.type=='file')
        {
            var sFileName=oInput.value;
            if(sFileName.length>0)
            {
                var blnValid=false;
                for(var j=0;j<_validFileExtensions.length;j++)
                {
                    var sCurExtension=_validFileExtensions[j];
                    if(sFileName.substr(sFileName.length-sCurExtension.length,sCurExtension.length).toLowerCase()==sCurExtension.toLowerCase())
                    {
                        blnValid=true;
                        break;
                    }
                }
                if(!blnValid)
                {
                    alert('Sorry, '+sFileName+' is invalid, allowed extensions are: '+_validFileExtensions.join(', '));
                    document.getElementById('files').value='';
                    return false;
                }
            }
        }
    }
    return true;
}
0
26.08.2013, 13:23
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.08.2013, 13:23
Привет! Вот еще темы с решениями:

Цикл по чтению имен файлов, созданию папок и переносу файлов
Добрый день, Задача: читать папку с файлами, затем вычленять из имени файла...

Проверка наличия на диске в указанном каталоге перечисленных в списке файлов и вывод имен отсутствующих
Проверка наличия на диске в каталоге, указанном первым параметром КФ файла...

Загрузка файлов с multiple
Доброго времени суток есть обработка 1 файла а как поправить чтобы выполнялась...

Цвет файлов в VCS - поменять синий цвет имен файлов
Всем привет, вот каким образом можно поменять цвет имени файлов в навигаторе...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru