函数jquery.html()不提供数据属性集值

jquery .html() function does not give data attribute set value

本文关键字:数据属性 jquery html 函数      更新时间:2023-09-26

我有一段js代码,它接受元素的html代码,以便将其发送到服务器端保存。html本身是动态生成的,其中的每个元素都有一个数据目标属性,该属性也是动态设置的。因此,在发送要保存的html字符串之前,jquery的.html()的用法如下:

var SaveString = $('#ElementID').html();

我得到的html不包括每个子元素的数据目标属性的值,而是显示为空白

data-target=""

有人知道那里发生了什么吗?

这是因为当您使用data()方法存储带有元素的信息时,它会存储在jQuery内部用作缓存的对象中。该信息不会添加到DOM中。

如果要将data-*属性添加到DOM,则需要使用attr()来设置它,例如:

$element.attr('data-target', 'foo');

当您检索父元素的html()时,它将是可访问的。

小提琴示例