需要jQuery DOM的一些帮助。
我需要提取id的内容。我有一个用户可以选择的列表,它将过滤地图的hotspot
。用户选择后,我希望filtertitle
显示新选择的过滤器。我可以申请" id"到过滤器标题但不确定内容,因为内容有购物/餐饮。有人请。
HTML
<div class="map-filter">
<div class="filtertitle">All Categories</div>
<ul class="filter-list">
<li class="active" id="All Categories">All Categories</li>
<li id="Shopping">Shopping/Dining</li>
<li id="Hotel">Hotels & Resorts</li>
<li id="Art">Art Galleries</li>
</ul>
</div>
jQuery
$('.filter-list li').click(function(){
var id = $(this).attr('id');
$(this).siblings().removeClass('active');
$(this).addClass('active');
$('.filtertitle').html(id); //This part is where I set the id
});
答案 0 :(得分:2)
使用 .text()
,它会为您提供所需元素的文字内容。
$('.filtertitle').html($(this).text());
如果是html内容,请使用 .html()
。
$('.filtertitle').html($(this).html());
答案 1 :(得分:0)
如果我理解你正确的问题那么你可以尝试这样的事情。
$('.filter-list li').click(function(e){
$(this).siblings().removeClass('active');
$(this).addClass('active');
$('.filtertitle').html($(e.currentTarget).text());
});
JSFiddle - https://jsfiddle.net/583zgs57/
答案 2 :(得分:0)
您可以使用$(this).text();而不是简单的设置ID。获取当前元素的文本内容。
$('.filter-list li').click(function(){
var id = $(this).attr('id');
$(this).siblings().removeClass('active');
$(this).addClass('active');
$('.filtertitle').html($(this).text());
});