Кнопка "Включено" при загрузке в Dropzone

Я создаю файлы для загрузки с dropzonejs но я хочу

", если пользователи не загружают и не загружают файл в proggres в 2-х виде" фото "и" Документация "кнопку отправить еще отключено".

", если пользователи уже выполнили загрузку в 2-х виде" фото "и" Документация ", эту кнопку отправить изменение включено"

Это мой script

<form action="send_data.php" id="mydata" name="mydata" method="POST">
 Your Name  
 </form>
 Your Photo 
 <form action="upload.php" method="POST">
 
 
 </form>
 Your Documentation 
 <form action="upload.php" method="POST">
 
 
 </form>
 <center><button disabled="True" onclick="javascript: submitform()" type="button">Submit</button></center>

этот исходный код dropzone.js и dropzone.css

Помогите мне поблагодарить:)

1 ответ

При загрузке dropzone добавляет предварительный просмотр загруженного элемента внутри div с классом dz-success, вы можете проверить для каждой формы, если существует этот элемент, одним способом может быть с помощью функции jQuery:

function checkForm() {
 var valid = true;
 if ($.trim($('input[name=your_name]').val()) === '') {
 valid = false;
 }
 $('form.dropzone').each(function() {
 if ($(this).find('.dz-success').length === 0) {
 valid = false;
 }
 });
 if (valid) {
 $('button[disabled=True]').removeAttr('disabled');
 }
};

Затем при инициализации формы dropzone вы можете добавить прослушиватель событий в событие успеха, которое вызывает функцию для проверки формы в опции init, когда вы вручную инициализируете dropzone вручную, вам нужно установить опцию автоматического обнаружения на false.

init документация:

- это функция, вызываемая при инициализации Dropzone. Вы может настроить прослушиватели событий внутри этой функции.

В соответствии с документацией событие success запускается, когда:

Файл загружен успешно. Получает ответ сервера как второй аргумент. (Это событие было названо законченным ранее)

Dropzone.autoDiscover = false;
$(".dropzone").each( function(){
 $(this).dropzone({
 init: function() {
 this.on("success", function() { 
 checkForm();
 });
 }
 });
});

Вы также можете вызвать функцию проверки, добавив ее в полный вариант.

В соответствии с документацией:

Complete вызывается, когда загрузка была либо успешной, либо ошибочной.

Dropzone.autoDiscover = false;
$(".dropzone").each(function() {
 $(this).dropzone({
 complete: function(file) {
 if (file.status == "success") {
 checkForm();
 }
 }
 });
});

подробнее о параметрах конфигурации: http://www.dropzonejs.com/#configuration

Вы можете видеть, что он работает здесь в runnable:

http://code.runnable.com/****************/dropzone-success-event-for-php

licensed under cc by-sa 3.0 with attribution.