2013-08-27 70 views
0

我有以下的HTML複製點擊李HTML到另一個標籤使用jQuery

<div class="btn-group"> 
    <button class="btn dropdown-toggle action" data-toggle="dropdown">Nav name <span class="caret"></span></button> 
    <ul id="nav" class="dropdown-menu test"> 
    <li><a href="#" id="action-1">one</a></li> 
    <li><a href="#" id="action-2">two</a></li> 
    <li><a href="#" id="action-3">three</a></li> 
    </ul> 
</div> 

<li>點擊我需要的清單標籤的HTML取代「導航名稱」

這是jQuery的我使用和jsfiddle here

jQuery("#action-1").click(function(e){ 
jQuery('.action').html('one <span class="caret"></span>'); 
e.preventDefault(); 
}); 
jQuery("#action-2").click(function(e){ 
jQuery('.action').html('two <span class="caret"></span>'); 
e.preventDefault(); 
}); 
jQuery("#action-3").click(function(e){ 
jQuery('.action').html('three <span class="caret"></span>'); 
e.preventDefault(); 
}); 

這是不乾淨的代碼,我知道,它可以寫成更好。我如何使用$這與jQuery獲取li標籤的HTML並替換。「導航名稱」的.action類html?由於下拉列表將要動態生成,因此我需要使用一種方法來獲取單擊的HTML的HTML,但不知道如何編寫它。

感謝

回答

2
$("#nav > li > a").click(function(e) { 
    e.preventDefault(); 
    $(".action").html($(this).text() + '<span class="caret"></span>'); 
}); 
1
$('#nav li').on('click', function (e) { 
    e.preventDefault(); 
    $('.action').html($(this).text() + '<span class="caret"></span>'); 
}); 

JSFiddle.

相關問題