Я пытался показать несколько выбранных значений в раскрывающемся списке select2. Итак, я разработал раскрывающийся список и сохранил выбранные значения. У меня есть следующий код в качестве параметров для раскрывающегося списка: <option value="<?php echo esc_attr($post->ID);?>"><?php the_title();?></option>
Примечание: параметры находятся в цикле.
Теперь я не могу установить эти несколько значений для select2 при загрузке страницы. Эти несколько значений устанавливаются только в том случае, если какой-либо параметр снова выбран из раскрывающегося списка.
Мой код указан ниже:
if ( isset( $wp_travel_engine_setting['crosssell']['trips'] ) && $wp_travel_engine_setting['crosssell']['trips']!='' )
{
$selectedval = $wp_travel_engine_setting['crosssell']['trips'];
}
echo
'<script>
jQuery(document).ready(function($){
$("#wte-cross-sell-'.$post->ID.'").select2();
var arrayFromPHP = '.json_encode($selectedval).';
console.log(arrayFromPHP);
$("#wte-cross-sell-'.$post->ID.'").val(arrayFromPHP);
$("#checkbox").click(function(){
if($("#checkbox").is(":checked") ){
$("#wte-cross-sell-'.$post->ID.' > option").prop("selected","selected");
$("#wte-cross-sell-'.$post->ID.'").trigger("change");
}else{
$("#wte-cross-sell-'.$post->ID.' > option").removeAttr("selected");
$("#wte-cross-sell-'.$post->ID.'").trigger("change");
}
});
});</script>';
//переменная $selectedval
даст нам массив идентификаторов выбранных значений, как показано в консоли браузера: (2) ["1301", "1024"]
Кто-нибудь может пролить свет на это? Как я могу установить значения при загрузке страницы, не выбирая параметр снова.
Спасибо за ваше время!
С уважением,