Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery-如何从元素列表中选择具有类名的元素_Javascript_Jquery_Closest - Fatal编程技术网

Javascript jQuery-如何从元素列表中选择具有类名的元素

Javascript jQuery-如何从元素列表中选择具有类名的元素,javascript,jquery,closest,Javascript,Jquery,Closest,我正在使用jQuery 我想从表中选择一个单元格。 所以我尝试了以下代码 // First line works fine for me. I can get a list of columns at the correct target row. var targetColumns = $(elemClicked).closest("tr").find("td"); // I want to get the cell with the class named "draftstatus

我正在使用jQuery

我想从表中选择一个单元格。 所以我尝试了以下代码

 // First line works fine for me. I can get a list of columns at the correct target row.
 var targetColumns = $(elemClicked).closest("tr").find("td"); 

 // I want to get the cell with the class named "draftstatus". This line has problem. I cannot get what I want.
 var targetCell = columnsAtTargetRow.$(".draftstatus");
从浏览器中检查的targetColumns如下所示:

上面的第五个td是我的目标手机

我还尝试使用find函数。它也不起作用,因为查找将从下一个子级开始

     columnsAtTargetRow.find(".draftstatus"); // this does not work.
我应该使用什么函数来获取td列表中的单元格

提前感谢。

这是不正确的:

columnsAtTargetRow.$(".myclass");
这应该是:

columnsAtTargetRow.find(".myclass");

您只需要确定要使用哪些选择器

var targetColumns = $(elemClicked).closest("tr").find("td"); 
这将从DOM上升到tr并选择tds。如果elemClicked位于td内,则可以使用closesttd选择tds,然后使用兄弟姐妹。draftstatus

如果elemClicked是td,那么您可以只使用兄弟姐妹。draftstatus

下面是一些示例代码,帮助演示一些选择器。希望这对你有所帮助,而不是让你更加困惑

$function{ //使用筛选器引用myclass类的所有单元格 $table1 t正文td.filter.myclass.addClassred; //单击所有tds的事件引用。目标类单元格使用同级 $table1 t车身td.onclick,function e{ $this.sides.target.toggleClassred; }; //表单元格中的项单击事件 $table1 t车身td a.onclick,功能E{ //切换粗体类 $this.closesttd.sides.target.toggleClassbold; //防止事件冒泡 e、 停止传播; }; } 瑞德先生{ 背景色:红色; } .bold{font-weight:bold;} 福 酒吧 价值2 二 福 酒吧 价值2 二
我想您需要阅读。如果您有tds,请尝试filter.draftstatus而不是find。您也可以将findtd更改为findtd.draftstatus。@abbottmw我以前试过findtd.draftstatus。它不起作用。我刚试过filter.draftstatus和filtertd.draftstatus,它们也不起作用。谢谢你的建议。你的html是什么样子的?你能提供一个淡化的例子吗?特别是在桌子上。我试过这个。。。它不起作用。ColumnStatargetRow是td元素的列表。td元素的列表,该目标单元格没有父子关系。所以我认为find在这里不起作用是有道理的。