Jquery 获取具有输入的下一个td
我有许多适用于此的表格,但这里有一个示例:Jquery 获取具有输入的下一个td,jquery,Jquery,我有许多适用于此的表格,但这里有一个示例: Cars VIN | Price | Color | Financing | Year | Action =======+========+========+===========+======+======== 1234 | ______ | Blue | _________ | 2012 | Submit -------+--------+--------+-----------+------+-------- 2233 |
Cars
VIN | Price | Color | Financing | Year | Action
=======+========+========+===========+======+========
1234 | ______ | Blue | _________ | 2012 | Submit
-------+--------+--------+-----------+------+--------
2233 | ______ | Red | _________ | 2016 | Submit
空格是输入(
),该表表示普通html表。Submit
s按钮也应算作输入
给定tr中td的索引,我需要返回具有输入的下一个td。
因此,如果起始索引是0
aka$(tr).find('td').eq(0)
,我需要1
或$(td)
。如果起始索引是2
,我需要3
。我以前用递归函数来做这个,但是它给出了一些奇怪的结果
这里有一个过滤器。您可以使用过滤器
函数getIndex(usedIndex){
var$tds=$('tr:first-child-td');//如果所有布局都相同,则只需要获取第一行
var$td=$tds.filter(函数(){
var$thisTd=$(本);
返回$tds.index($thisTd)>usedIndex&&$thisTd.find('.textbox').length;//筛选td索引是否高于输入的索引,并且是否有作为子级的输入
}).eq(0);//获取第一个
返回$tds.索引($td);
}
console.log(getIndex(1))
console.log(getIndex(4))
td.red输入{
边框颜色:红色
}
测试
测试
测试
测试
测试
测试
测试
测试
那么什么是索引?请澄清您的具体问题或添加其他详细信息,以突出显示您所需的内容。正如目前编写的,很难准确地说出您的要求。该表表示一个普通的html表。请显示代码,然后我需要1或$(td)。这部分是我必须使用的。起始索引是tr内td的索引。因此,每个tr
有6个td
s,它们的索引为0-5。因此,如果我发送0
(指第一个td),我需要获得下一个有输入的td的索引。非常好,谢谢!我能够稍微简化过滤器。filter((i,v)=>i>usedIndex&&$(v).find('input').length)
haha,我总是忘记传入回调的参数!