javascript - 通过 data 属性内的对象值查找元素

标签 javascript jquery html

我有以下情况。 有输入,数据属性中有对象:

<input type='text' data-testname='{"repeat" : "{"group_id" : "1"}"}' value='value 1' />
<input type='text' data-testname='{"repeat" : "{"group_id" : "1"}"}' value='value 2' />
<input type='text' data-testname='{"repeat" : "{"group_id" : "1"}"}' value='value 3' />

是否有任何选择器,没有循环,可以查找文档中的所有元素,而不添加新的数据属性(data-group_id = '1'),其中:

测试名称 > 重复 > group_id = 1

最佳答案

Yes, another attribute i know, is solution, but still..... is there way like this?

是的,您可以使用属性值选择器

input[data-testname='{"repeat" : "{"group_id" : "1"}"}']

input[data-testname='{"repeat" : "{"group_id" : "1"}"}'] {
  color: green;
  font-weight: bold;
}
<input type='text' data-testname='{"repeat" : "{"group_id" : "1"}"}' value='value 1' />
<input type='text' data-testname='{"repeat" : "{"group_id" : "1"}"}' value='value 2' />
<input type='text' data-testname='{"repeat" : "{"group_id" : "1"}"}' value='value 3' />


<input type='text' data-testname='{"repeat" : "{"group_id" : "2"}"}' value='value 1' />
<input type='text' data-testname='{"repeat" : "{"group_id" : "3"}"}' value='value 2' />
<input type='text' data-testname='{"repeat" : "{"group_id" : "4"}"}' value='value 3' />

我建议使用 data-* 属性,如下所示

<input type='text' data-group-id="1" value='value 1' />
<input type='text' data-group-id="1" value='value 2' />
<input type='text' data-group-id="1" value='value 3' />

然后使用属性值选择器

input[data-group-id="1"]

input[data-group-id="1"] {
  color: green;
  font-weight: bold;
}
<input type='text' data-group-id="1" value='value 1' />
<input type='text' data-group-id="1" value='value 2' />
<input type='text' data-group-id="1" value='value 3' />

<input type='text' data-group-id="2" value='value 2' />
<input type='text' data-group-id="3" value='value 3' />
<input type='text' data-group-id="4" value='value 4' />

关于javascript - 通过 data 属性内的对象值查找元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38182271/

相关文章:

javascript - javascript目标心率计算器所需的计算帮助

javascript - 切片发生在代码中,但不会在 UI 中更新

html - 有时 Font Awesome 只显示矩形和数字

javascript - 网格内的 Ext JS 组合框

javascript - 更改值未显示

javascript - 如何使用 PHP 和 JQuery AJAX 在 <div> 标签中检索和插入 MySQL 数据?

javascript - 使用 JavaScript 获取图像 src 的替代方法

javascript - 如何在 html 中创建像 Outlook To(收件人姓名)这样的文本框

php - 使用 php 生成 html 和 javascript - 引号/双引号

javascript - 如何改进或减少此 JavaScript 的冗余?