无法获取 select2 中默认选项的值 jquery
Unable to get value of default option in select2 jquery
我使用相同的表单来添加新产品和使用 ID 编辑产品。当我们添加新产品时,它的类别是从 select2 下拉列表中选择的。但是当我们编辑已经存在的产品时,我想将其类别显示为默认选项。我尝试使用 initSelection,但以这种方式仅显示文本并且其值未定义。我的表单 HTML 代码是:
<form class="form-horizontal form-label-left" novalidate>
<div class="item form-group">
<label class="control-label col-md-3 col-sm-3 col-xs-12" >Category
</label>
<div class="col-md-6 col-sm-6 col-xs-12">
<select class="select2_single form-control col-md-7 col-xs-12" ></select>
</div>
</div>
<div class="item form-group">
<label class="control-label col-md-3 col-sm-3 col-xs-12" >Name <span class="required">*</span>
</label>
<div class="col-md-6 col-sm-6 col-xs-12">
<input id="name" class="form-control col-md-7 col-xs-12" value="<?php echo $name; ?>" placeholder="Product Name" required="required" type="text">
</div>
</div>
</form>
我的 jquery 脚本是
<script>
$(document).ready(function () {
categories();
});
function categories() {
$.ajax({
'url' : 'category/data',
'success' : function(data){
var j = $.parseJSON(data);
var select2_ary = [];
$.each(j, function(k, v) {
select2_ary.push({
id : v['id'],
text : v['category']
});
});
var id = "<?php echo $id; ?>";
if(id != '') {
$(".select2_single").select2({
placeholder: "Select a Category",
initSelection: function(element, callback) {
callback({val: '3223', text: '<?php echo $id; ?>' });
},
data : select2_ary
});
}
else {
$(".select2_single").select2({
placeholder: "Select a Category",
data : select2_ary
});
}
}
});
}
</script>
我不确定 select2 版本,但它不是最新版本。
当我提交此表单时,我没有获得 select2 默认选项的值。请帮忙!
你可以试试这个:
$(".select2_single").select2({ placeholder: "Select a Category", data : select2_ary }).select2("val",'3223'); });
我使用相同的表单来添加新产品和使用 ID 编辑产品。当我们添加新产品时,它的类别是从 select2 下拉列表中选择的。但是当我们编辑已经存在的产品时,我想将其类别显示为默认选项。我尝试使用 initSelection,但以这种方式仅显示文本并且其值未定义。我的表单 HTML 代码是:
<form class="form-horizontal form-label-left" novalidate>
<div class="item form-group">
<label class="control-label col-md-3 col-sm-3 col-xs-12" >Category
</label>
<div class="col-md-6 col-sm-6 col-xs-12">
<select class="select2_single form-control col-md-7 col-xs-12" ></select>
</div>
</div>
<div class="item form-group">
<label class="control-label col-md-3 col-sm-3 col-xs-12" >Name <span class="required">*</span>
</label>
<div class="col-md-6 col-sm-6 col-xs-12">
<input id="name" class="form-control col-md-7 col-xs-12" value="<?php echo $name; ?>" placeholder="Product Name" required="required" type="text">
</div>
</div>
</form>
我的 jquery 脚本是
<script>
$(document).ready(function () {
categories();
});
function categories() {
$.ajax({
'url' : 'category/data',
'success' : function(data){
var j = $.parseJSON(data);
var select2_ary = [];
$.each(j, function(k, v) {
select2_ary.push({
id : v['id'],
text : v['category']
});
});
var id = "<?php echo $id; ?>";
if(id != '') {
$(".select2_single").select2({
placeholder: "Select a Category",
initSelection: function(element, callback) {
callback({val: '3223', text: '<?php echo $id; ?>' });
},
data : select2_ary
});
}
else {
$(".select2_single").select2({
placeholder: "Select a Category",
data : select2_ary
});
}
}
});
}
</script>
我不确定 select2 版本,但它不是最新版本。 当我提交此表单时,我没有获得 select2 默认选项的值。请帮忙!
你可以试试这个:
$(".select2_single").select2({ placeholder: "Select a Category", data : select2_ary }).select2("val",'3223'); });