如何使用jQuery获取HTML元素的真实ID?



我想获取HTML元素的真实(未更改(id。我的意思是,例如我有这样一行 HTML:

<p id='1'>Something in paragraph</p>

如果用户在 Chrome 或其他浏览器中使用开发者工具,并将此<p>标记的 id 更改为"2",如何获取此元素的过去(和真实(ID?

我使用了这个,但它仍然给出了更改后的 id。

$("input").attr('id');

提前非常感谢!

答案很简单,只需要修改时间旅行和DOM(文档对象模型(的基础知识

当用户将id的值从"1"更改为"2"时,实际上您已经从id=1id=2"1"已被用户从存在中删除的时间旅行,id的现值为"2"(实际值(,dom只知道这个值。所以你只能得到dom实际知道的那些值,即只有现值

$("input").attr('id');

这是获取 id 👍 值的正确方法

您可以将data-id元素附加到 html 元素以获取原始值。

$("p").attr("id", 2);
console.log($("p").attr('id'));
console.log($("p").data('id'));
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<p id="1" data-id="1">Something in paragraph</p>

在更改原始 ID 之前,您必须跟踪它,您可以将该旧 ID 分配给元素的数据属性或作为变量在代码中。

最新更新