的陣列所以我有這個漫長複雜的形式(我就長話短說)DropzoneJS:上傳文件並提交表格名稱
<form>
<section>
<input type="text" name="customer" id="customer">
<input type="text" name="address" id="address">
<input type="text" name="contact_number" id="contact_number">
</section>
<section>
<input type="text" name="product_name[]" class="product_name">
<input type="text" name="qty[]" class="qty">
<input type="text" name="brand[]" class="brand">
<input type="text" name="model[]" class="model">
<div class="file_upload"></div>
<button type="submit" id="submit_btn">Submit Form</button>
</section>
</form>
,我使用DropzoneJS上傳文件。這裏的問題是我需要傳遞表單字段值,尤其是那些帶有名稱屬性數組的輸入。
這裏是我的JS代碼至今:
var myDropzone = new Dropzone("div.file_upload", {
url: upload,
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
},
autoProcessQueue: false,
addRemoveLinks: true,
uploadMultiple: true,
parallelUploads: 100,
maxFiles: 100,
maxFilesize: 500,
paramName: "file",
init: function(){
this.on("sendingmultiple", function(data, xhr, formData) {
formData.append("product_name", $(".product_name").serialize());
formData.append("qty", $(".qty").serialize());
formData.append("brand", $(".brand").serialize());
formData.append("model", $(".model").serialize());
formData.append("customer", $("#customer").val());
formData.append("address", $("#address").val());
formData.append("contact_number", $("#contact_number").val());
});
this.on("successmultiple", function(files, response) {
console.log('success sending')
});
this.on("errormultiple", function(files, response) {
console.log('error sending')
});
}
});
$("#submit_btn").click(function(e) {
e.preventDefault();
e.stopPropagation();
myDropzone.processQueue();
});
當我點擊提交按鈕,我得到了在控制檯說 $(...).processQueue is not a function
也是錯誤的,我在做正確的發送姓名陣列在我的後端? 我用serialize()
爲每個類..
爲什麼這些輸入需要是一個數組? – wallek876
它是一組要發送到服務器的產品..然後文件上傳是來自用戶的支持文件,例如ID,訂單等。 –
但是,現在每個類型只有一個輸入每次上傳,即使您上傳多個圖片。 – wallek876