我刚刚阅读了很多论坛,以了解如何为select2分配值。但是没有代码对我有用......
这是我的HTML
<select class="form-control select2" style="width: 100%;" id="drpSearchSubjCode">
</select>
我像这样在jquery中初始化select2
$(".select2").select2();
我尝试下面的代码为select2赋值
试试1
var subjId = 1;
$('#drpSearchSubjCode').select2("val", subjId);
试试2
var subjId = 1;
$("#drpSearchSubjCode").select2().select2("val", subjId);
试试3
var subjId = 1;
$('#drpSearchSubjCode').val(subjId).trigger('change');
试试4
var subjId = 1;
$('#drpSearchSubjCode').select2('data', { id: subjId, a_key: 'My Data' });
试试5
var subjId = 1;
$('#drpSearchSubjCode').val(subjId);
$('#drpSearchSubjCode').trigger('change');
试试6
var subjId = 1;
$('#drpSearchSubjCode').select2('data', { id: subjId, text: "Hello!" });
以上代码没有为我工作......任何人都可以帮我找到,问题出在哪里?
var data = {
id: 1,
text: 'Hello!'
};
var newOption = new Option(data.text, data.id, false, false);
$('#drpSearchSubjCode').append(newOption).trigger('change');
并选择:
$('#drpSearchSubjCode').val('optionvalue').trigger('change');
$('#drpSearchSubjCode').select2();
$('#add').on('click', function(e) {
var data = {
id: 1,
text: 'Hello' + $('#drpSearchSubjCode option').length + '!'
};
var newOption = new Option(data.text, data.id, false, false);
$('#drpSearchSubjCode').append(newOption).trigger('change');
})
$('#sel').on('click', function(e) {
$('#drpSearchSubjCode').val('AL').trigger('change');
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<link href="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.6-rc.0/css/select2.min.css" rel="stylesheet" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.6-rc.0/js/select2.min.js"></script>
<select class="form-control select2" style="width: 100%;" id="drpSearchSubjCode">
<option></option>
<option value="AL">Alabama</option>
<option value="WY">Wyoming</option>
</select>
<button id="add">Add new option</button>
<button id="sel">Select option</button>