Динамическая настройка параметров html в поле выбора не отображается в select html

#javascript #jquery #html

#javascript #jquery #HTML

Вопрос:

Мы можем динамически отмечать некоторые параметры с помощью jquery

С помощью ниже выберите:

 <select name='strings' id="strings" multiple style="width:100px;">
    <option value="Test">Test</option>
    <option value="Prof">Prof</option>
    <option value="Live">Live</option>
    <option value="Off">Off</option>
    <option value="On">On</option>
</select>
  

Ниже js будет выбран Test,Prof,Off

 var values="Test,Prof,Off";
$.each(values.split(","), function(i,e){
    $("#strings option[value='"   e   "']").prop("selected", true);
});

console.log( $("#strings").html() ); 
  

http://jsfiddle.net/3f0ea4dc/

Это работает нормально…

Но параметры $("#strings").html() не помечаются как выбранные. Итак, я ожидал увидеть

   <option value="Test" selected>Test</option>
  

Но я вижу

   <option value="Test">Test</option>.
  

Есть комментарии ?! Есть ли какой-нибудь способ получить html с помощью selected!

Ответ №1:

Просто замените prop() на attr() него, и все будет работать, как ожидалось 😉

Ответ №2:

Пожалуйста, попробуйте приведенный ниже код :-

 $.each(values.split(","), function(i,e){
    $("#strings option[value='"   e   "']").attr("selected", true);
});
  

http://jsfiddle.net/3f0ea4dc/3/