你理解错了,我不是只想获得一个span内的值,我是想获得所有被选中的第i个span的值
时间: 2024-03-26 07:42:23 浏览: 24
非常抱歉,我理解错误了。如果您想获取所有被选中的第i个span的值,您可以使用如下代码:
```javascript
var spans = document.querySelectorAll('span'); // 获取所有的span元素
var selectedValues = []; // 用于存储选中的第i个span的值
var i = 1; // 第i个span的索引
for (var j = 0; j < spans.length; j++) { // 遍历所有的span元素
if (spans[j].classList.contains('selected')) { // 判断当前的span元素是否被选中
if (i === 1) { // 如果当前是第i个span,则将其值存储到selectedValues数组中
selectedValues.push(spans[j].textContent);
}
i++; // 继续寻找下一个第i个span
}
}
console.log(selectedValues); // 输出所有被选中的第i个span的值
```
这段代码首先使用`document.querySelectorAll()`方法获取所有的`span`元素,然后遍历这些元素,判断当前元素是否被选中,如果是被选中的第i个`span`元素,则将其值存储到`selectedValues`数组中。最后输出所有被选中的第i个`span`元素的值。
相关问题
$(this).find('.checkbox')[i].checked不能获取第二个被选中的复选框,当第一个复选框没有被选中时。我想根据第i个选中的复选框,获取第i个span标签内的值
可以尝试使用以下代码获取第i个选中的复选框,并获取对应的span标签内的值:
```
var checkboxes = $(this).find('.checkbox');
var spans = $(this).find('span');
var checkedIndex = -1;
for (var i = 0; i < checkboxes.length; i++) {
if (checkboxes[i].checked) {
checkedIndex++;
if (checkedIndex === i) {
var value = $(spans[i]).text();
// 处理获取到的值
break;
}
}
}
```
这段代码使用了一个变量`checkedIndex`来记录已经选中的复选框的数量,每次找到一个选中的复选框就将`checkedIndex`加1,如果`checkedIndex`等于当前遍历到的索引i,就说明当前这个复选框是第`checkedIndex+1`个被选中的复选框,此时就可以获取对应的span标签内的值。
$(this).find('.checkbox')[i].checked为什么不能选取第二个被勾选的复选框,在第一个复选框没有被选中的情况下。我想根据选中的第i个复选框,获取第i个span标签内的值
可能是因为你的代码中使用了 `find` 方法,该方法会在指定元素的后代元素中查找符合条件的元素。如果第一个复选框没有被选中,那么第二个复选框就不是它的后代元素,因此无法通过 `find` 方法选中。
你可以尝试使用 `eq` 方法来选中指定索引的元素。例如,可以使用以下代码来获取第二个被勾选的复选框对应的 span 标签内的值:
```
var checkedIndex = 1; // 第二个被勾选的复选框的索引为 1
var isChecked = $(this).find('.checkbox').eq(checkedIndex).prop('checked');
if (isChecked) {
var value = $(this).find('span').eq(checkedIndex).text();
console.log(value);
}
```
这里使用了 `eq` 方法来选中索引为 `checkedIndex` 的复选框和对应的 span 标签,然后获取了 span 标签内的文本值。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)