如何在jQuery中使用等于“active”的类选择器获取nth-child param值?
我不确定这是否合乎逻辑,但我想确定当前通过nth-param值选择了哪个dd元素列表。
代码实际上是来自Foundation的Vertical Tabs的垂直标签循环。
<dl class="vertical tabs">
<?php foreach($tabs as $key):?>
<dd id="ver_tab"><a href="javascript:void(0)" onclick="ajaxFunc('<?php echo ($key['group_name']) ?>')" id="ver_tab_a"><?php echo ucwords($key['group_name']);?></a></dd>
<?php endforeach ?>
<dd><a id="new_group_button" href="#new_group_form">+ New Group</a></dd>
我有一个动态获取数据的标签列表。我底部还有一个静态标签,可以添加一个新组。单击动态生成的选项卡上的选项卡将添加一个值为“active”的类我想要的是当我单击静态选项卡时,一个模态打开,当我取消模态时(模态也来自Foundation的Reveal),在单击静态选项卡之前,所选选项卡应还原为活动选项卡。
在我的jQuery上我有:
$("#ver_tab:nth-child("+x+")").attr("class","active");
要还原到之前选择的选项卡,其中x是所选选项卡的第n个子项。
非常感谢!
答案 0 :(得分:0)
听起来你正试图获得.active
元素的.index()
:
$('dd.active').index('dd')
答案 1 :(得分:0)
经过长时间的搜索,我终于弄明白了。
虽然这个答案采用不同的方法,但它解决了我如何识别当前所选标签索引号的问题。
这就是我的所作所为。 在我的:
<dd id="ver_tab"><a href="javascript:void(0)" onclick="ajaxFunc('<?php echo ($key['group_name']) ?>')" id="ver_tab_a"><?php echo ucwords($key['group_name']);?></a></dd>
我在:
添加了另一个参数onclick="('<?php echo ($key['group_name']) ?>')"
所以看起来像:
onclick="('$(this)','<?php echo ($key['group_name']) ?>')"
然后在我的ajaxFunc上:
function ajaxFunc(x, group_name){
var pos = x.closest("dd").index;
}
pos变量现在应该包含当前所选标签的索引值。
感谢此帖Jquery index can't find element (-1) wrong input (with live function)!救我这么多时间!