2014-10-20 6 views
6

Так у меня реализация этого урока здесь: http://www.dropzonejs.com/bootstrap.htmlДобавление большего количества данных Dropzone.js размещать

Это работает прекрасно, и я загружать файлы просто отлично. Теперь я хочу отправить идентификатор пользователя вместе с изображением в данных POST, когда Dropzone загрузит изображение. Я нашел учебник enyo here, в котором объясняется, как добавить данные скрытой формы в dropzone, но с помощью урока dropstrap, который предоставляет dropzone, нет формы, и поэтому никакие скрытые данные после отправки не могут быть отправлены.

Как я могу использовать код из учебника начальной загрузки, связанного с выше, и все же отправлять скрытые входные данные в сценарий загрузки? Должен ли я каким-то образом преобразовать код, предоставленный в форму, и если да, как бы я это сделал?

ответ

18

Это было время, так как вы задали этот вопрос, но основываясь на кончиках сайте Dropzone

http://www.dropzonejs.com/#tips

вы должны быть в состоянии сделать один из 3-х вещей -

1. если есть в форме добавить скрытые параметры.

2. Вы можете использовать Params как так -

new Dropzone({ 
    url: "/", 
    params: { 
     foo: "bar" 
    } 
}); 

3. Аккуратно обращаться на отправку события, как так -

myDropzone.on("sending", function(file, xhr, formData) { 

// Will sendthe filesize along with the file as POST data. 

formData.append("filesize", file.size); 

}); 
+2

Я могу подтвердить, 'params: {foo:" bar "}' работает – Djomla

+0

, если я использую динамическое значение .. он не будет работать с '' params: {foo: dynamicValue} '' – Kasnady

3

Я нахожу учебник, который вы предоставляете немного запутанным, поскольку, действительно, нет формы. Просто создайте форму с class="dropzone" и добавьте скрытые входы. Он показывает только шаблон по умолчанию для отброшенных файлов и некоторый код JS для обработки основных событий. Я рекомендую проверить примеры the main Dropzone page.

Например, в нашем коде, это выглядит примерно так (отредактированный немного):

<form action="myAction" 
     class="dropzone" 
     id="dropzoneId" 
     name="pictures"> 
    <input type="hidden" name="id"> 
</form> 

И, действительно, это так. У нас есть код Javascript для обработки скрытого поля id и некоторых функций fancier, но идентификатор отправляется вместе с данными изображения.

+1

Это не работает для меня. это все еще жизнеспособно? – user2570937

2

Я знаю, что это довольно старый пост но я попытался заставить SolarBear работать, и это сработало для меня при добавлении параметра «значение» к скрытому входу, как это;

<form action="/action.php" class="dropzone"> 
<input type="hidden" name="additionaldata" value="valueToPass" /> 
</form> 

Благодарим за помощь!

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