动态更改 Dropzone url
Change Dropzone url dynamically
我正在尝试更改 dropzone 中的 URL,但我发现的信息似乎对我不起作用。我有一个表格,我在使用 JS 时放置了一个拖放区。我想根据在下拉列表中选择的选项更改 dropzone URL。这是我正在使用的代码:
空降区
<select id="bioImages" name="bioImages" style="width: 300px;" onchange="urlSetter();">
<option value="countryFlag">Country Flag</option>
<option value="locationImg">Location Image</option>
<option value="nationalAnthemaud">National Anthem</option>
<option value="countryNameaud">Country Name</option>
</select>
<form id="dropzoneUpload" action="" enctype="multipart/form-data" method="post">
<div class="clearfix">
<br><br>
</div>
<div class="half clearfix">
<div id="dZUpload" class="dropzone" name="fileUpload">
<div class="dz-default dz-message">
Drop image/audio here or click to upload (system supports 1 file per category).
</div>
</div>
</div>
</form>
添加拖放区
function addDropzone() {
$(document).ready(function () {
Dropzone.autoDiscover = false;
$("#dZUpload").dropzone({
url: "url.com",
addRemoveLinks: true,
success: function (file, response) {
console.log(response);
}
});
});
}
改变URL
function urlSetter() {
var drop = document.getElementById('dropzoneUpload');
if(type.includes('aud')) {
drop.options.url = 'url.com';
} else {
drop.options.url = 'url2.org';
}
}
您不能使用这种方式更改拖放区 url。所以首先创建一个全局变量并在下拉更改事件(urlSetter)上设置该变量的值,如下所示:
var dropzonePostUrl='url.com';
function urlSetter() {
var drop = document.getElementById('dropzoneUpload');
if(type.includes('aud')) {
dropzonePostUrl = 'url.com';
} else {
dropzonePostUrl = 'url2.org';
}
}
您还需要更改您的 dropzone 初始化代码如下:
function addDropzone() {
$(document).ready(function () {
Dropzone.autoDiscover = false;
$("#dZUpload").dropzone({
url: "url.com",
addRemoveLinks: true,
success: function (file, response) {
console.log(response);
},
init: function () {
var _this=this;
this.on("processing", function (file) {
_this.options.url = dropzonePostUrl;
});
}
});
});
}
您可以在处理事件中更改url。
function addDropzone() {
$(document).ready(function () {
Dropzone.autoDiscover = false;
$("#dZUpload").dropzone({
url: "url.com",
addRemoveLinks: true,
success: function (file, response) {
console.log(response);
},
init: function () {
this.on("processing", function (file) {
this.options.url = dropzonePostUrl;
});
}
});
});
}
var dropzonePostUrl='url.com';
function urlSetter() {
var drop = document.getElementById('dropzoneUpload');
if(type.includes('aud')) {
dropzonePostUrl = 'url.com';
} else {
dropzonePostUrl = 'url2.org';
}
}
<select id="bioImages" name="bioImages" style="width: 300px;" onchange="urlSetter();">
<option value="countryFlag">Country Flag</option>
<option value="locationImg">Location Image</option>
<option value="nationalAnthemaud">National Anthem</option>
<option value="countryNameaud">Country Name</option>
</select>
<form id="dropzoneUpload" action="" enctype="multipart/form-data" method="post">
<div class="clearfix">
<br><br>
</div>
<div class="half clearfix">
<div id="dZUpload" class="dropzone" name="fileUpload">
<div class="dz-default dz-message">
Drop image/audio here or click to upload (system supports 1 file per category).
</div>
</div>
</div>
</form>
我正在尝试更改 dropzone 中的 URL,但我发现的信息似乎对我不起作用。我有一个表格,我在使用 JS 时放置了一个拖放区。我想根据在下拉列表中选择的选项更改 dropzone URL。这是我正在使用的代码:
空降区
<select id="bioImages" name="bioImages" style="width: 300px;" onchange="urlSetter();">
<option value="countryFlag">Country Flag</option>
<option value="locationImg">Location Image</option>
<option value="nationalAnthemaud">National Anthem</option>
<option value="countryNameaud">Country Name</option>
</select>
<form id="dropzoneUpload" action="" enctype="multipart/form-data" method="post">
<div class="clearfix">
<br><br>
</div>
<div class="half clearfix">
<div id="dZUpload" class="dropzone" name="fileUpload">
<div class="dz-default dz-message">
Drop image/audio here or click to upload (system supports 1 file per category).
</div>
</div>
</div>
</form>
添加拖放区
function addDropzone() {
$(document).ready(function () {
Dropzone.autoDiscover = false;
$("#dZUpload").dropzone({
url: "url.com",
addRemoveLinks: true,
success: function (file, response) {
console.log(response);
}
});
});
}
改变URL
function urlSetter() {
var drop = document.getElementById('dropzoneUpload');
if(type.includes('aud')) {
drop.options.url = 'url.com';
} else {
drop.options.url = 'url2.org';
}
}
您不能使用这种方式更改拖放区 url。所以首先创建一个全局变量并在下拉更改事件(urlSetter)上设置该变量的值,如下所示:
var dropzonePostUrl='url.com';
function urlSetter() {
var drop = document.getElementById('dropzoneUpload');
if(type.includes('aud')) {
dropzonePostUrl = 'url.com';
} else {
dropzonePostUrl = 'url2.org';
}
}
您还需要更改您的 dropzone 初始化代码如下:
function addDropzone() {
$(document).ready(function () {
Dropzone.autoDiscover = false;
$("#dZUpload").dropzone({
url: "url.com",
addRemoveLinks: true,
success: function (file, response) {
console.log(response);
},
init: function () {
var _this=this;
this.on("processing", function (file) {
_this.options.url = dropzonePostUrl;
});
}
});
});
}
您可以在处理事件中更改url。
function addDropzone() {
$(document).ready(function () {
Dropzone.autoDiscover = false;
$("#dZUpload").dropzone({
url: "url.com",
addRemoveLinks: true,
success: function (file, response) {
console.log(response);
},
init: function () {
this.on("processing", function (file) {
this.options.url = dropzonePostUrl;
});
}
});
});
}
var dropzonePostUrl='url.com';
function urlSetter() {
var drop = document.getElementById('dropzoneUpload');
if(type.includes('aud')) {
dropzonePostUrl = 'url.com';
} else {
dropzonePostUrl = 'url2.org';
}
}
<select id="bioImages" name="bioImages" style="width: 300px;" onchange="urlSetter();">
<option value="countryFlag">Country Flag</option>
<option value="locationImg">Location Image</option>
<option value="nationalAnthemaud">National Anthem</option>
<option value="countryNameaud">Country Name</option>
</select>
<form id="dropzoneUpload" action="" enctype="multipart/form-data" method="post">
<div class="clearfix">
<br><br>
</div>
<div class="half clearfix">
<div id="dZUpload" class="dropzone" name="fileUpload">
<div class="dz-default dz-message">
Drop image/audio here or click to upload (system supports 1 file per category).
</div>
</div>
</div>
</form>