使用 JQuery 选择具有特定类的特定行的子项
Posted
技术标签:
【中文标题】使用 JQuery 选择具有特定类的特定行的子项【英文标题】:Select a specific row's childs with a specific class with JQuery 【发布时间】:2013-06-18 09:58:00 【问题描述】:我想选择所有具有“szoveg”类的元素
<tr>
<td><input type=hidden name=sss value=M></td>
<td><input type=hidden![enter image description here][1] name=mmm value=U></td>
<td><input class="szoveg" type=text name=x3 maxlength=5 size=31></td>
<td><input class="szoveg" type=text name=x4 maxlength=20 size=52></td>
<td><input class="szoveg" type=text name=x5 maxlength=20 size=43></td>
<td><input class="szoveg" type=text name=x6 maxlength=200 size=75></td>
<td colspan=2><input class="gomb" type=submit value=New onclick="changeColor2()"></td>
</tr>
我可以选择带有$("#megye_tablazat tr").eq(3)
的特定行,但不能选择类为szoveg
的input elements
。
如何使用 JQuery 实现它?
我检查了一下,它就在这里,在文档树中......
【问题讨论】:
为什么你的隐藏输入直接嵌套在tr
中?仅仅因为它们被隐藏并不意味着您可以将它们放在那里。
因为它将是表单提交或 ajax 提交中所需的信息...但这不是重点...更多我不编写此代码,我只需要扩展它一个功能
@BoltClock 建议,你应该把它放在其他地方,例如在表格声明之前。
只有 td
和 th
元素可以是 tr
元素的子元素。浏览器很可能会纠正您无效的 html 并将 input
元素移动到表格之前或之后,或者只是忽略它们。始终创建有效的 HTML!除此之外,尚不清楚您的问题是什么。您想访问哪个input
?你想做什么?
好的,为了清楚起见,我没有编写此代码:S 并且这是在某些公司使用的,我认为我无权重构它只是为了扩展它的某些功能。 ..
【参考方案1】:
试试find()
$("#megye_tablazat tr").eq(3).find('input.szoveg').each(function()....);
【讨论】:
【参考方案2】:使用 each() 函数:
$("input.szoveg"). each (function()
// in here, you have the current input as this. fe:
console.log($(this).val());
);
【讨论】:
这将是一个很好的解决方案,如果我在此页面中没有数百行并且我不想要特定行!以上是关于使用 JQuery 选择具有特定类的特定行的子项的主要内容,如果未能解决你的问题,请参考以下文章
jQuery 需要帮助在具有特定类的 div 元素中选择 tr 元素
使用 jQuery 获取不是具有特定 CSS 类的容器的子元素的元素的后代