0

我的HTML如下。

<tr class="success">
    cfgdfgh
<td>1</td>
<td>home1</td>
<td>home1</td>
<td>home1</td>
<td>
<input class="btn btn-mini btn-danger deleteMenu" type="button" value="Delete" name="delete">fgfg</td>
</tr>

我的 Jquery 代码如下

    $(".deleteMenu").click(function(){    
$(this).parent().css("color","red");
    });

我尝试使用上面的 jquery 代码但没有运气。我想先选择 td 吗?

演示

4

10 回答 10

5

尝试:

$(".deleteMenu").click(function () {
    $(this).closest('tr').find('td:first').css("color", "red");
});

jsFiddle 示例

使用您的选择器 ,.parent()您正在选择包含该按钮的单元格。完成您希望它遍历 DOM 到行 ( .closest('tr')) 然后返回到第一个单元格 ( .find('td:first')) 的一种方法。

顺便说一句,在您的示例中,文本cfgdfgh在您拥有的地方无效。

于 2013-06-06T16:30:08.250 回答
2

这样做很容易:

$(".parentClass").find("td:eq(0)")... /* :eq(0) = first occurance */

您的 HTML 标记也是错误的。

于 2013-06-06T16:30:09.890 回答
2

1) 从编写有效的 HTML 开始

2)沿着DOM树向上直到你到达行元素,为此你应该使用 .closest()

3) 找到该行元素的第一个子元素

4)应用您想要的任何样式更改

小提琴:http: //jsfiddle.net/u4A7V/7/

代码:

$(".deleteMenu").click(function () {
    $(this).closest("tr") // go up the tree
      .find("td:first-child") // find the first child
      .css("color", "red"); // change color
});
于 2013-06-06T16:33:44.497 回答
1

最简单的方法是为 . 我不知道是否可以将 id 分配给(可能)。

于 2013-06-06T16:29:59.550 回答
1

这将获得该td行中的第一个:

$(".deleteMenu").click(function(){    
    $('.success td').eq(0).css("color","red");
});
于 2013-06-06T16:31:16.330 回答
1

希望这会有所帮助:

http://jsbin.com/eruric/1/edit

$(".success").find("td:first").css("background-color", "red");
于 2013-06-06T16:31:24.457 回答
1

您的 HTML 无效,缺少 '' 标记并且在<td>s 之外有文本,请将其更改为:

<table>
<tr class="success">
<td>1</td>
<td>home1</td>
<td>home1</td>
<td>home1</td>
<td>
<input class="btn btn-mini btn-danger deleteMenu" type="button" value="Delete" name="delete">fgfg</td>
</tr>
</table>

然后你的js到:

$(".deleteMenu").click(function(){    
    $(this).parent().siblings(':eq(0)').css("color","red");
});

JSFiddle 演示

于 2013-06-06T16:31:34.457 回答
1

我们到了:

$(".deleteMenu").click(function(){    
      $(this).closest('tr').find('td').first().css("color","red");
});
于 2013-06-06T16:31:38.620 回答
1

$(".deleteMenu").parent()将选择该输入的父级,即 TR。另外,不要直接在 TR 中包含代码,使用 TD 或 TH 并将其放入其中。因此,将其放入自己的 TD 后,您正在寻找

$(".deleteMenu").click(function(){    
    $(this).parents("tr").find("td").first().css("color","red");
});
于 2013-06-06T16:31:39.490 回答
1

您可以使用:first-child.

我假设myTable是表的 ID

$("#myTable tr td:first-child").css("color","red");

Js小提琴

请同时更改您的标记。

tr元素只能td没有text. tr您已在元素中写入文本。

于 2013-06-06T16:33:02.290 回答