为什么可以'您是否字符串化了一个jQuery对象

Why can't you stringify a jQuery object?

本文关键字:对象 jQuery 一个 字符串 是否 为什么      更新时间:2023-09-26

JSON.stringify( $("p") );行导致错误:

InvalidStateError: Failed to read the 'selectionDirection' property from 'HTMLInputElement': The input element's type ('button') does not support selection.

(我使用的是谷歌Chrome 34)

为什么?

否则,我应该如何使$("p")更便携,以便存储它或在消息中传递它?

HTML元素中涉及大量的状态(属性、事件处理程序、与之相关的代码、内部状态等)。将所有这些序列化为JSON是没有意义的。

如果您想在JSON中获得元素的某种表示形式,例如可以使用.html()来获得表示元素的HTML字符串。或者提出一种仅对标记名称、属性和文本进行编码的格式。您可能需要手动实现(或者找到一个库-"html到json"可能是一个很好的关键字)