向XHTML标记添加数据
我的网站是XHTML1.1,我在页面上的向XHTML标记添加数据,html,xhtml,Html,Xhtml,我的网站是XHTML1.1,我在页面上的和标记中添加了“rel”属性,用于在页面上存储jQuery脚本的数据。当验证我的页面时,我得到错误:“没有属性'rel'”。那么,在HTML标记中存储任意数据的最佳方法是什么 我正在为我的网站制作评论页面。当输入一条注释时,它通过AJAX发布,AJAX返回所有注释的JSON。然后我查看“rel”值,查看页面上已经有哪些注释,只添加新的注释 jQuery代码运行良好,只是“rel”属性无法验证。由于rel不是li的有效属性,您应该使用id而不是属性,它在那里
和
标记中添加了“rel”属性,用于在页面上存储jQuery脚本的数据。当验证我的页面时,我得到错误:“没有属性'rel'”。那么,在HTML标记中存储任意数据的最佳方法是什么
我正在为我的网站制作评论页面。当输入一条注释时,它通过AJAX发布,AJAX返回所有注释的JSON。然后我查看“rel”值,查看页面上已经有哪些注释,只添加新的注释
jQuery代码运行良好,只是“rel”属性无法验证。由于
rel
不是li
的有效属性,您应该使用id
而不是属性,它在那里也是有效的。虽然它不是XHTML规范,但您可以使用HTML5规范中包含的data-*属性
如果希望保持完全兼容XHTML1.1,则需要创建一个模式,并将其名称空间包含在html
元素中,该模式定义了要使用的属性及其应用的元素
我认为在标记中存储“任意”数据违背了XHTML的精神。您应该改用这个方法。JQuery似乎喜欢用类来存储不同html元素的状态 一个例子是jqueryui选项卡如何使用
UI state active
类定义当前选择的选项卡
此方法的一个好处是,您可以很容易地根据所查找的不同状态选择图元
作为提醒,您可以(实际上)向元素添加任意数量的类,并用空格分隔它们
<li class="client_data already_added red_text etc">Bob</li>
Bob
为什么不直接返回新评论的JSON?@Dave,我想到了,但是如果在你打开页面和你发表评论之间有人发表了评论呢。我想加载所有新评论。谢谢大家。我不知道为什么我一开始就用了'rel',我真的应该用'id'(或'name')。我喜欢扩展XHTML以支持新属性的想法。。。或者我可以切换到HTML5。你可以通过一个隐藏的输入在表单中添加一些散列(例如,最新评论的id)。保存评论(服务器端)后,检查id更大的评论并只返回这些评论。@Dave,这不是个坏主意。只是发布了相同的答案并将其删除。如果我理解正确,数据应该已经存在于HTML中。如果情况并非如此,那么您可以将数据存储在一个变量中,而无需将其添加到HTML元素中。+1您可以从今天开始使用HTML5 Doctype,所有浏览器都应该正确处理此问题。选择作为扩展XHTML帖子的答案,这很好。我不确定为什么不从一开始就这样做。