尽管有一些文档,但关于如何使用它的真实示例却很少。
例如:我想在我现有的表单中包含 Dropzone,该表单添加了带有标题、描述和照片的产品。
Dropzone 本身就是一种形式。最好使用 Dropzone 来预览和验证图像类型和大小,但让主窗体提交所有数据。我应该怎么做?
这就是想法(但是,我不应该在表单中包含一个表单):
<form action="products/add.php" method="POST" class="form-horizontal" role="form">
<div class="form-group">
<legend>Add product</legend>
</div>
<label for="title">Title</label>
<input type="text" name="title" id="input-title" class="form-control">
<label for="description">Description</label>
<input type="text" name="description" id="input-description" class="form-control">
<form action="/file-upload" class="dropzone" id>
<div class="dropzone-previews"></div>
</form>
<div class="form-group">
<div class="col-sm-10 col-sm-offset-2">
<button type="submit" class="btn btn-primary">Submit</button>
</div>
</div>
</form>
最佳答案
请尝试以下操作。正如创建者所解释的那样,您必须以编程方式“加载”dropzone here
Dropzone.autoDiscover = false;
jQuery(document).ready(function() {
$("div#my-awesome-dropzone").dropzone({
url: "/file/post"
});
});
<link href="https://cdnjs.cloudflare.com/ajax/libs/dropzone/4.0.1/dropzone.css" rel="stylesheet" />
<link href="https://cdnjs.cloudflare.com/ajax/libs/dropzone/4.0.1/min/basic.min.css" rel="stylesheet" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/dropzone/4.0.1/dropzone.js"></script>
<form action="products/add.php" method="POST" class="form-horizontal" role="form">
<div class="form-group">
<legend>Add product</legend>
</div>
<label for="title">Title</label>
<input type="text" name="title" id="input-title" class="form-control">
<label for="description">Description</label>
<input type="text" name="description" id="input-description" class="form-control">
<div class="dropzone dropzone-previews" id="my-awesome-dropzone"></div>
<div class="form-group">
<div class="col-sm-10 col-sm-offset-2">
<button type="submit" class="btn btn-primary">Submit</button>
</div>
</div>
</form>
关于php - 另一个 PHP 表单中的 Dropzone.js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30808901/