我想用dropzonejs发布我的表单数据和图像。我能够获取输入并选择值,除了cities_id。
当用户选择国家/地区时,我会提取有关该国家/地区的城市并在选择字段中显示这些国家/地区。即使用户选择了一个城市,我也无法获得这个cities_id。在ajax请求的参数中似乎未定义。
选择表单
<div class="col-sm-12 col-md-3">
<select id="country" class="select2" name="country_id">
<option value="0">Select a country</option>
<?php $get_country = $db->prepare("SELECT * FROM country ORDER BY id ASC");
$get_country->execute();
while ($fetch_country = $get_country->fetch(PDO::FETCH_ASSOC)) {
;?>
<option value="<?php echo $fetch_country['id'] ;?>">
<?php echo $fetch_country['name'] ;?>
</option>
<?php } ;?>
</select>
</div>
<div class="col-sm-12 col-md-3">
<select id="city" class="select2" name="city_id">
</select>
</div>
dropzonejs发送表单数据
myDropzone.on('sendingmultiple', function (file, xhr, formData) {
$("form input, form select").each(function () {
formData.append($(this).attr("name"), $(this).val());
}
formData.append('name', $('#summernote').summernote('code'));
});
如何从我的选择表单中获取cities_id值?
答案 0 :(得分:0)
我重新创建了类似的东西,似乎有效。我收到两个警报。 “B”然后是“C”。
您是否检查过通过AJAX添加的选项标签是否具有有效的value
属性且没有格式错误的HTML?
当您添加<option>
元素时,您是使用AJAX替换整个<select id="city"></select>
还是仅使用新的<option>
元素填充现有的select?
您使用的是哪种浏览器和jQuery版本?
这是我的(部分)代码
<select name="sel1">
<option value="A">A</option>
<option value="B">B</option>
</select>
<select name="sel2"></select>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script>
imageDropzone.on('sendingmultiple', function(a,b,c) {
$('select').each(function() {
alert($(this).val());
});
});
$('[name=sel1]').on('change', function() {
addOpt();
});
function addOpt() {
$.get('options.html', null, function(){
$('[name=sel2]').append('<option value="C">C</option>');
});
}
</script>