2016-02-24 4 views
1

Мне нужно сделать проверку формы, используя JavaScript/jQuery. В моей форме есть одно поле ввода, в котором пользователи могут загружать файлы и одну таблицу, где <td> - это поля ввода. Как это:Как проверить, был ли пользователь выбран файл для загрузки?

<input type="file" name="file" class="filestyle" id="fajl" data-icon="false" accept=".pdf,.csv,.xlsx"> 

И это:

<table class="table table-bordered table-hover "> 
<tbody> 
<tr id="prvi_red"> 
<td><input type="text" name="user1_name" class="form-control" placeholder="12121212" required></td> 
<td><input type="text" name="user1_surname" class="form-control" placeholder="Text" required></td> 
<td><input type="text" name="user1_email" class="form-control" placeholder="Number" required></td> 
</tr> 

А также у меня есть одна кнопка, которая представляет всю форму (как загруженные файлы и вручную вставить в таблицу). Я пытался проверить форму, как это, используя плагин Parsley.js проверки:

$(document).ready(function(){ 
    $('#form1').submit(function(){ 
     if(($('#fajl').val()=='')){ 
      console.log('ovdje sam'); 
      var validateForm = $('#prvi_red').parsley().validate(); 
      if(validateForm){ 
       //do something 
      } 
     } 
    }); 
}); 

И это:

$(document).ready(function(){ 
    $('#buton').click(function(){//when submit button is clicked 
     if(($('#fajl').val()=='')){ 
      console.log('ovdje sam'); 
      var validateForm = $('#prvi_red').parsley().validate(); 
      if(validateForm){ 
       //do something 
      } 
     } 
    }); 
}); 

Как вы можете видеть, что я пытаюсь добиться, чтобы сделать проверку входных полей таблицы если файл не загружен. Но в обоих случаях выше код ничего не происходит. Я попытался поставить console.log('ovdje sam');, чтобы проверить, подходит ли сценарий этой части, но это не отображается в консоли. Любая помощь будет очень желанной.

+0

try 'var file = $ ('# fajl') [0] .files; \t \t \t if (file.length> 0) 'для подтверждения, если вход пуст – guradio

+0

Не помогло. Он ничего не показывает в консоли. – Ognj3n

+0

Вы поместили какой-либо файл в файл типа ввода? – guradio

ответ

0

Лучшим способом будет удаление атрибута required, когда пользователь указывает файл. Прослушайте событие input на входе файла и соответствующим образом обновите другие входы. Когда они обновляются, вы должны вызвать 'input' (или позвонить parsley().validate()), чтобы все отображаемые сообщения об ошибке были удалены.

Смежные вопросы