2014-02-09 49 views
0

我正在使用菜單。該腳本創建選擇菜單。我想添加<label>標記。如何在javascript中創建一個新的html元素?

輸出;

<select name="select_box" id="select_box"> 
</select> 

我想要什麼;

<label> 
<select name="select_box" id="select_box"> 
</select> 
</label> 

腳本;

$(function() { 

var select = $('<select name="select_box" id="select_box">').appendTo('#nav'); 
    $('#nav li').each(function() { 
     var li = $(this), 
      a = li.find('> a'), 
      p = li.parents('li'), 
      prefix = new Array (p.length + 1).join('-'); 
     var option = $('<option>') 
      .text(prefix + ' ' + a.text()) 
      .val(a.attr('href')) 
      .appendTo(select); 
    }); 
}); 
$(function() { 
    $("<option>", { 
     "selected": "selected", 
     "value": "", 
     "text": "Menü Seçiniz..." 
    }).prependTo("#nav select"); 
}); 
$(function() { 
    $('#nav select').on('change', function() { 
     var url = $(this).val(); 
     if (url) { 
      window.location = url; 
     } 
     return false; 
    }); 
}); 

也許這是非常簡單的問題,但我不知道該怎麼做。 Sory我的壞語。我在等你的幫助。

+0

看看HTTPS包裝你的元素:// API .jquery.com/wrap/ –

+1

非常感謝!這種方法奏效。 – cgrclk

回答

1

要添加新的元素:

var $newlabel = $("<label />").html($("#select_box")); 

或編輯您的線路以

var select = $('<label><select name="select_box" id="select_box"></label>').find("select"); 

或者與選擇元素

var select = $('<select name="select_box" id="select_box" />'); 
select.wrap("<label></label>"); 
+0

.wrap()方法起作用。謝謝。 – cgrclk

相關問題