我正在尝试将所选值从select2组件复制到另一个禁用的组件。我能够从两个隐藏的选择中传输值(select2实际上隐藏常规选择并创建一个新的html结构)但我无法将文本复制到span。 我有一个jsfiddle,可以解释我的问题:http://jsfiddle.net/vktyaLmp/。
这是将值从select2组件复制到另一个组件的正确方法吗? 有内置方法吗?
这是我的代码:
$("#originSelect, #targetSelect").select2({
allowClear: true,
minimumInputLength: 1
});
if ($('#originSelect').val() != 0) {
$('#select2-chosen-2').text( $('#originSelect').val() );
}
答案 0 :(得分:1)
Select2为您提供了内置函数来直接获取/设置值。您可以使用以下代码替换您的javascript:
$("#originSelect, #targetSelect").select2({
allowClear: true,
minimumInputLength: 1
});
$("#originSelect").change(function(e) {
if ($('#originSelect').val() != 0) {
$('#targetSelect').select2('val', $('#originSelect').select2('val'));
}
});
(我刚刚在你的小提琴中测试过它)
答案 1 :(得分:0)
您没有捕获原始的更改事件选择您需要这样做
$('#originSelect').change(function(){
$('#targetSelect').select2('val', $('#originSelect').select2("val").toString());
});