表格有2个字段:点击,姓名
每一行都有相同的class="datagrid-row"
$("tr.datagrid-row span.l-btn-text").click()//一次能点击表格中的所有行并打开链接。
我想通过jquery选择器选择所有姓名中姓“张”的行,并点击其中的“点击”按钮,请问怎么操作?
jQuery有个:contains(text)选择器
,结合parent,siblings,jQuery,children等能实现
https://jquery.cuishifeng.cn/contains.html
弄了简单版可以参考下
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
<title>页面名称</title>
</head>
<body>
<table>
<tbody>
<tr class="datagrid-row">
<td>
<span class="l-btn-text" onclick="fn()">点击</span>
</td>
<td>
<div class="datagrid">张三</div>
</td>
</tr>
<tr class="datagrid-row">
<td>
<span class="l-btn-text" onclick="fn()">点击</span>
</td>
<td>
<div class="datagrid">李四</div>
</td>
</tr>
<tr class="datagrid-row">
<td>
<span class="l-btn-text" onclick="fn(11)">点击</span>
</td>
<td>
<div class="datagrid">张三</div>
</td>
</tr>
</tbody>
</table>
<script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
<script>
function fn() {
console.log("发生点击");
}
// 使用children
// $(".datagrid:contains('张三')").parent().siblings().children().click();
// 使用find
$(".datagrid:contains('张三')").parent().siblings().find(".l-btn-text").click()
// console.log(
// "datagrid-row",
// $(".datagrid:contains('张三')").parent().siblings().find(".l-btn-text")
// );
</script>
</body>
</html>