如何使用内部 html 选择类
How do I select a class with Inner html?
所以我有两个div:
<div class="someGenericClass">1 Item</div>
<div class="someGenericClass">Another Item</div>
如果给我两个变量:
classVariable = ".someGenericClass";
innerHTMLVariable = "Another Item";
如果我在向该部分添加 ID 时没有发言权,我如何根据类选择第二个div 元素,然后选择 innerHTML。使用 javascript 或 jQuery。我知道这不是按 innerHTML 搜索的最佳选择,但我在添加 ID 等方面没有发言权,而且我不能依赖div 按固定顺序排列。
$(classVariable).somehowInnerHTML?
谢谢
好吧,您已经知道按元素内部HTML内容搜索不是很可靠,所以。我会给你一些提示,告诉你如何做到这一点。
1). 使用纯 Javascript,我会使用 Array 的过滤方法:
var classVariable = ".someGenericClass";
var innerHTMLVariable = "Another Item";
var found = [].slice.call(document.querySelectorAll(classVariable)).filter(function(div) {
return div.innerHTML === innerHTMLVariable;
});
此代码将找到所有内部HTML内容等于innerHTMLVariable
的div。
2). 使用 jQuery:
$(classVariable + ':contains(' + innerHTMLVariable + ')');
上面的代码并不等同于纯 js 版本,因为它使用:contains
选择器,所以它匹配有文本内容的div,但当然它也会匹配<div class="someGenericClass">Some text Another Item content</div>
。
jQuery 等效项将是
$(classVariable).filter(function() {
return $(this).text() === innerHTMLVariable;
});
您可以使用
$(".someGenericClass:contains('Another Item')" ).<any action you want to do in this element>
获取变量中的对象:
var variable = $(".someGenericClass:contains('Another Item')" );
相关文章:
- jQuery在两个字符串标识符之间选择HTML
- D3选择html——传递函数时,索引从1开始,而不是从0开始
- 如何减去选项两个相关的选择 HTML
- 选择 html 表中的行
- 使用jquery聚焦选择html元素
- jQuery从选项的输出字符串中选择HTML选项
- 使用 jQuery 通过 ID 属性选择 HTML 元素
- 尝试开机自检“选择”HTML表单输入时出现PHP错误
- 从单选按钮中获取值以选择 html 格式的图像
- 如何使用javascript/jquery中的某个类选择HTML页面上的所有角度字段
- 仅选择 html 节点的根项
- 有没有办法通过javascript注入自动选择HTML<选项>
- 如何选择 html <选项>其中 text=Washington
- 如何选择 HTML 表中一列的所有复选框
- 通过jquery动态创建和选择html元素
- 有没有其他方法可以选择HTML元素
- 如何调用一个jQuery Colorbox弹出在选择HTML控件的onchange事件
- 如何使用 jsoup 选择 html 文档的叶标签
- 使用 HTML 选择 (HTML) 的选择顺序出现问题
- 在选择 HTML 表单的文本输入字段后无法使日期选取器工作