如何在没有使用class或id的情况下访问特定元素?
P粉106301763
2023-08-31 19:11:14
<p>我正在尝试操作所有的HTML标签,代码如下所示:</p>
<pre class="brush:php;toolbar:false;">var elements = document.getElementsByTagName("<*>")</pre>
<p>我想要操作变量<code>elements</code>并修改其中的标签。</p>
<p>问题是,我需要给它们添加一个ID或某种类名。</p>
<p>除了添加ID或类名之外,还有其他方法吗?
标签是否有默认的特殊ID或其他什么东西?</p>
<p>非常感谢。</p>
<p>编辑:</p>
<p>我使用了<code>data-id</code>来操作这些元素。所以...现在我的代码看起来像这样:</p>
<pre class="lang-js prettyprint-override"><code>const dataIDName = "data-spellchecker"
//初始化data-id
noOfElements++;
elements[i].setAttribute(dataIDName, noOfElements);
</code></pre>
<pre class="lang-js prettyprint-override"><code>//通过data-id变量获取DOM元素
//dataId是你的data-id变量
document.querySelector(`[${dataIDName}="${dataId}"]`);
</code></pre></p>
您可以根据以下主要方式获取元素:
此外,您还可以使用自己的逻辑来使用xpath。
您可以为其分配data-id和值
您可以使用jquery访问它
示例: