jQuery不工作与工具提示新行字符

jQuery not working with tooltip new line character

本文关键字:新行 字符 工具提示 工作 jQuery      更新时间:2023-09-26

我有一个html元素的字符串,比如

"<div title='"123 &#13; 123'">test</div>"

当我将它插入DOM并在页面上查看它时,我看到如下

123
123

作为工具提示。然而,当我试图改变它的标题值使用jquery:

element.prop("title", "456 &#13; 456");

I see like

456 &#13; 456

作为工具提示。有人知道怎么解决这个问题吗?谢谢。

在第一个示例中,浏览器将&#13;解析为DOM,从而正确理解实体。

在第二个例子中,

没有被浏览器解析,而是被javascript直接注入到DOM中。因此,您需要使用适当的javascript编码。

.prop('title',"456 'r 456");

试试这个http://jsfiddle.net/pEbt2/5/

使用.prop("title", "456 'n 456");

另一种选择是:

.prop( 'title', ['456',String.fromCharCode(13),'456'].join(' ') );

如果你想在工具提示中处理HTML特殊字符,如&#13;&#8364;(欧元符号),你可以创建一个空的,看不见的div元素,设置它与你的HTML,然后将其转换为文本使用:

element.prop("title", $('<div/>').html('456 &#13; 456').text());