javascript - 按数据属性查找元素
问题描述
我在运行时填充了一个 div 的数据,我需要检查该元素是否存在。
我在 SO 中看到了一些关于如何做到这一点的提示。
我在 DOM 中有一些东西
<div id="messages">
<div class="direct-chat-msg right" data-msg-id="true_5521971319071@c.us_AB57E3CC69662AC4059250385929DD72">
<div class="direct-chat-info clearfix">
<span class="direct-chat-name pull-right"></span>
</div>
</div>
</div>
现在,我需要测试元素是否存在。我尝试了下一个,但两者都不起作用:
document.querySelectorAll('[data-msg-id="true_5521999957988@c.us_26B99C7B58A653A4FFCFBD1DFF92498D"]').length>0
和
$("body").find(`[data-msg-id='${"true_5521999957988@c.us_26B99C7B58A653A4FFCFBD1DFF92498D"}']`).length>0
解决方案
我看到你在true
这里有一个前缀:使用正则表达式(而不是整个 ID)怎么样?
JS:
document.querySelectorAll('div[data-msg-id="^true"]') ? foo : bar;
jQuery:
$('body').find('div[data-msg-id="^true"') ? foo : bar;
我不知道您是否必须匹配确切的值,但这应该会有所帮助。当然,如果您有更多实例并且想要检查第一个,则必须相应地更改代码。
推荐阅读
- c# - 如何在.net core中递归调用web api?
- javascript - 从 url 获取 pdf blob 并使用 puppeteer 库直接插入驱动器并获取
- git - 尝试进行初始提交
- matlab - 简单的递归函数不能很好地工作
- sql - SQL Server:投钱和小数点后 2,3 或 4 位
- python - 是否可以在 GIMP 的 python 脚本中使用 win32com
- c++ - 在链表的第 n 个位置插入一个节点
- javascript - 如何将变量分配给输入元素中的值属性?
- security - CouchDB 数据设计与安全
- javascript - 防止表单提交后重置多个具有相同名称的复选框