我正在使用Bootstrap,我有以下下拉菜单:
<div class="btn-group">
<a class="btn btn-primary dropdown-toggle" data-toggle="dropdown" href="#">
number of rooms
<span class="caret"></span>
</a>
<ul class="dropdown-menu">
<li>
<a href="#" >1</a>
</li>
<li>
<a href="#" >2</a>
</li>
<li>
<a href="#" >3</a>
</li>
<li>
<a href="#" >4</a>
</li>
<li>
<a href="#" >5</a>
</li>
</ul>
</div>
当我点击下拉菜单中的条目时,我想获取所选文本。 我试过了:
$('.dropdown-menu :selected').text();
$('.dropdown-menu option:selected').text();
$('.dropdown-menu').find('option:selected').text();
$('.dropdown-menu li a').text(); //returns 12345
$('.dropdown-menu > .active').text();
...
但它不起作用。我究竟做错了什么 ?谢谢
编辑事实上,我对Javascript完全不熟悉(我是一名java开发者)。我正在使用Backbone,并希望有类似的东西:
window.RoomView = Backbone.View.extend({
events : {
"click .dropdown-menu" : "test"
}
test : function(){
//display selected text
}
答案 0 :(得分:7)
这取决于您是否想要在现有函数中获取文本,或者根本不是:
$('.dropdown-menu a').click( function () {
var text = $(this).text();
});
我不是骨干专家,但也许......
events : {
"click .dropdown-menu a" : "test"
}
test : function(){
//display selected text
var text = $(this).text();
}
答案 1 :(得分:2)
就这样做。
$('.dropdown-menu li a').click(function() {
alert($(this).text());
});
答案 2 :(得分:2)
"click .dropdown-menu a" : "displayRoomConfigForms"
displayRoomConfigForms: function(event){
var text = $(event.currentTarget).text();
}
做到了