JQuery Select как минимум два входа = файл в контейнере - PullRequest
0 голосов
/ 27 декабря 2011

У меня есть группа загрузки файлов в форме, и я бы хотел указать, сколько из них требуется.Это HTML:

<!-- file upload group -->
<div class="mcFileUpGroup" mcminselect="2">
  <span class="mcLegend">File Upload Group: (required)</span>
  <input name="fileUploads[]" type="file">
  <input name="fileUploads[]" type="file">
  <input name="fileUploads[]" type="file">
</div>

Тогда в JQuery:

$('.mcFileUpGroup').each(function() {
    $('.mcFileUpGroup input[type=file]').each(function() {
            if($(this).val() == '') { 
                // do something
            }
            else{
                // do something else
            }
    });
});

Это, однако, не позволяет мне указать количество необходимых загрузок.Например: требуется как минимум два.Как я могу это сделать?

Спасибо!

1 Ответ

0 голосов
/ 27 декабря 2011

Имея текущий каждый цикл, вы уже проверяете, является ли поле пустым или нет. Исходя из этого, вы можете объявить переменную, которую вы будете увеличивать при каждой загрузке файла. Сохраните счет этого и убедитесь, что окончательный счет окажется ниже двух файлов.

$('.mcFileUpGroup').each(function() {
    var fileCount = 0;
    $('input[type=file]', this).each(function() {
            if($(this).val() == '') { 
                // do something
            }
            else{
                // do something else
                fileCount++;
            }
    });
    if (fileCount < 2) {
      window.alert("You need to select at least 2 files");
      return false;
    }
});
...