2012-08-11 68 views
0

我正在做一個選擇對象以及追加選項,一切順利。但選項永遠不會附加到選擇對象..任何幫助?jquery'選項'附加問題與選擇對象

if (el.type === 'select') { 
    element = $('<label>' + el.label + '<select></select></label>').attr({ 
     id: el.id, 
     name: el.name 
    }) //my select object 
    var options = "" 
    $.map(el.options, function(option, i) { 
     options += '<option' + option.value + '>' + option.text + '</option>'; 
    }) 
    $(element).append(options); // never append to select object 
    console.log(options); //it prints properly like : <option>Select Country</option><optionin>India</option><optionus>United Stated</option><optionuk>United Kingdom</option><optioncn>Canada</option> 
}​ 

那會是什麼問題呢?哪裏不對了?

+0

要追加的標籤,而不是選擇。使用'$(element).find('select')。append(options);'。順便說一句,'$ .map'用於返回一個值數組,'$ .each'用於迭代。 – hyperslug 2012-08-11 16:11:45

回答

0

似乎對我來說工作正常,您是否檢查了您創建的選擇對象,並沒有將更改插入到DOM中?

FIDDLE

0

感謝所有,我附有這樣一來,它的工作以及..

if(el.type === 'select'){ 
         element = $('<label>'+el.label+'<select></select></label>').attr({ 
          id : el.id, 
          name:el.name 
         }) 
         var options = "" 
         $.map(el.options, function (option,i) { 
          $(element).find('select').append($('<option></option>').attr('value',option.value).text(option.text)); 
         }) 

        }