2011-03-18 3 views
0
<script type="text/javascript"> 
$(document).ready(function() { 
    $('#divID').each(function() { 
     var $select = $('<select id="dropdown" onchange="location = this.options[this.selectedIndex].value;" />'); 
     $(this).find('a').each(function() { 
      var $option = $('<option />'); 
      $option.attr('value', $(this).attr('href')).html($(this).html()); 
      $select.append($option); 
     }); 
     $(this).replaceWith($select); 
    }); 
    $('<option selected="selected" value="#">Select Option</option>').prependTo('#dropdown'); 
}); 
</script> 

위의 옵션을 제외하고 모든 것이 효과적입니다. selected = selected는 IE에서 작동하지 않습니다. 내가 ATTR과 prepending이 추가를위한 장소를 전환 아마 것이지만prependTo & javascript 코드를 대체하십시오!

답변

1

$('<option value="#">Select Option</option>').attr('selected', 'selected').prependTo('#dropdown'); 
+1

한 시도 - 순수 워크 플로우의 가독성 : 먼저 옵션을 추가 한 다음 당신은 일을 그것에게 – Andrey

+0

을 선택할 때 order() .prependTo.attr을 반대로 주셔서 감사합니다! – canintex

관련 문제