0
我在ERB中有兩個選擇器。他們使用所選插件:將選定的選項追加到選擇器
<%= select_tag :provinces,
options_for_select(DataHelper::all_provinces_captions.zip(DataHelper::all_provinces_ids)),
{:multiple => true, class: 'chosen-select chzn-select',
:data => {:placeholder => 'Filter Provinces/States'}}
%>
<%= f.select :province_ids,
(DataHelper::all_provinces_captions.zip(DataHelper::all_provinces_ids)),
{ include_blank: true },
{multiple: true, data: {placeholder: 'Filter Provinces/States'} }
%>
我想要的選項從選擇到另一個的一個拷貝,同時仍保持選擇的選擇的選項,但它不工作。這裏是我試過的Javascript函數:
var selectedVals = [];
$(".chzn-select").chosen().change(function() {
$("#provinces option:selected").each(function() {
console.log ("this value is " + ($(this).val()));
selectedVals.push($(this).val());
});
$("#education_plan_province_ids").empty();
for (var i = 0; i < selectedVals.length; i++) {
console.log (selectedVals[i] + " selected");
$("#education_plan_province_ids").append($("<option>" + selectedVals[i] + "</option>").attr('selected', true));
}
selectedVals = [];
});
attr('selected', true)
是否有另一種替代方案?
試試這個'$(「.chzn-select」)。chosen()。change(function(){$(「#education_plan_province_ids」)。empty(); $(「#provinces option:selected」) .each(function(){(「#education_plan_province_ids」)。append($(「」).prop('selected',true)); });' – bipen
I認爲你的問題是'$(「#education_plan_province_ids」)中的括號位置。append($(「」))。attr('selected',true);'必須加上選項元素不是父元素,如下所示:$(「#education_plan_province_ids」)。append($(「」).attr('selected',true));' – mdameer
我會編輯它,謝謝!然而,問題仍然存在@mdameer –