我正在尝试使用 jQuery 获取元素的索引以发送到 PHP 脚本。
这是我的 XHTML
<form action="/accreditation/questions/" method="post" id="questions-form">
<fieldset id="question-0">
<legend>Question</legend>
<h3>What colour is grass?</h3>
<ul>
<li>
<input type="radio" name="answer[0]" value="0" id="radio-0-0" />
<label for="radio-0-0">Green</label>
</li>
<li>
<input type="radio" name="answer[0]" value="1" id="radio-0-1" />
<label for="radio-0-1">Red</label>
</li>
<li>
<input type="radio" name="answer[0]" value="2" id="radio-0-2" />
<label for="radio-0-2">Orange</label>
</li>
</ul>
</fieldset>
<fieldset id="question-1">
<legend>Question</legend>
<h3>how old is alex</h3>
<ul>
<li>
<input type="radio" name="answer[1]" value="0" id="radio-1-0" />
<label for="radio-1-0">21</label>
</li>
<li>
<input type="radio" name="answer[1]" value="1" id="radio-1-1" />
<label for="radio-1-1">11</label>
</li>
<li>
<input type="radio" name="answer[1]" value="2" id="radio-1-2" />
<label for="radio-1-2">23</label>
</li>
</ul>
</fieldset>
</form>
我需要获取字段集元素的索引。我目前正在使用这个 each 迭代器(我不想更改它,因为它里面有很多其他函数)。
$('#questions-form ul li').each(function() {
qIndex = $('fieldset').index($('fieldset', $(this).parent()))
});
我希望 qIndex 是字段集相对于表单的索引。例如,在这种情况下,我应该让它等于 0 和 1(尽管会有 6 个值,因为它循环遍历列表元素)。
我玩了一段时间,没能得到正确的索引。我总是找不到 (-1)。
如果有帮助,下面是我用来获取列表项相对于包含 ul 元素的索引的代码。
index = $('li', $(this).parent()).index(this);
我的字段集索引抓取代码有什么问题?
最佳答案
LI
的父级是UL
,而不是fieldset
。
我认为这将为您设置 qIndex
:
qIndex = $('fieldset').index($(this).parents('fieldset'));
关于javascript - 如何使用 jQuery 获取该元素的索引?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/628967/