2013-07-07 49 views
1

我的問題是,如何更改UL列表中的原始元素的值,選擇/選擇一個李項目下。更改無序列表的值時選擇李項目

例如:我想選擇City3,當我選擇「Pick City」時,它應該是「city3」的值。

這是我的jsfiddle。 這是HTML:

<div class="menu1"> 
<li class="naslov"><b>Pick City</b></li> 
<div class="submenu1"> 
    <ul id="sel"> 
     <li value="1"><a href="#"><b>City1</b></a></li> 
     <li value="2"><a href="#"><b>City2</b></a></li> 
     <li value="3"><a href="#"><b>City3</b></a></li> 
     <li value="4"><a href="#"><b>City4</b></a></li> 
     <li value="5"><a href="#"><b>City5</b></a></li> 
    </ul> 
</div> 

也就是它可以不改變任何CSS/HTML(有我的意思是,我不想加選擇,選擇元素),並使其發揮作用只是在一些JQuery/JS功能?

感謝, 米洛斯

回答

1
$('#sel a').click(function(){ 
    $('li.naslov b').html(this.innerHTML); 

    return false; 
}); 

Live DEMO

+0

沒錯其工作。謝謝! – Michael

0

另一種可能的方式做到這一點。在這種情況下,li可以是動態的,基於AJAX feed或其他JavaScript。

$('#sel').on('click','li',function() { 
     $('li.naslov b').text($(this).text()); 
    }); 

jsFiddle

+0

1.演示不起作用。 2.使用'html' 3.不要將選擇器添加到id選擇器。 4.不要使用委託事件沒有很好的理由。 – gdoron

0

試試這個作爲你的JS ...

$(document).ready(function(){ 
    $('.menu1').hover(function(){ 
     $('.submenu1').stop(true).slideToggle('slow'); 
    }); 
    var orig = $(".naslov").html(); 
    $("#sel li").hover(function(){ 
     $(".naslov").html($(this).text()); 
    }, function(){ 
     $(".naslov").html(orig); 
    }); 
}); 
相關問題