我有一个项目清单;每次列表中的项目数量都不同:
<li id='item1'>number_1<li> <li id='item2'>number_2<li> … <li id='itemn'>number_n<li>
当用户选择项目时。我想将项目设置为选中。 在我的代码中。我可以得到每个项目的ID。我的问题是我无法将项目设置为选中;例如。如果我得到item2。我希望该项目成为
我在网上搜索过,也许这是一个太简单的探测器,我没有找到类似的问题和答案。任何人都可以帮帮我。谢谢!<li id='item2' class="selected" >number_2<li>
因为id是mycode中的变量。我在jquery脚本中尝试了很多方法。像:
$("#id").addClass('selected'); // doesn't work; $("li" id).addClass('selected'); // doesn't work; $("#" id).addClass('selected'); // doesn't work; $($this. id).addClass('selected'); // doesn't work;
答案 0 :(得分:2)
您需要将#
连接到您的ID,如下所示:
$("#" + id).addClass('selected');
您的代码应如下所示(无需将ID存储在您提到的变量中):
$("li").click(function () {
$(this).siblings().find(".selected").removeClass("selected");
$(this).addClass("selected");
});
答案 1 :(得分:1)
我认为你正在寻找
$('#'+id).addClass('selected');
// or
$(this).addClass('selected');
但这取决于您尝试执行此代码的位置。
答案 2 :(得分:1)
如果您在尝试设置此项时位于点击处理程序中,最简单的是:
$(this).addClass('selected');
如果您有变量id
,但不在点击处理程序中,则需要:
$('#'+id).addClass('selected');
答案 3 :(得分:1)
试试这个
$('li').click(function() {
$(this).addClass('selected');
});
答案 4 :(得分:0)
$("#id").addClass('selected'); // doesn't work;
这应该可行,在使用此代码之前导入您的jquery。