如何将标签放入 html 属性中?
使用 xslt 我想创建一个属性:
<span class="tooltip">
<xsl:attribute name="onmouseover">
<xsl:text>javascript:function(</xsl:text>
<span class="label">Aggiunta</span>
<xsl:apply-tempaltes/>
<xsl:text>)</xsl:text>
</xsl:attribute>
问题是只有纯文本被放入属性内,就像
<span class="tooltip" onmouseover="javascript:function(Aggiunta ...)">
没有 span 标签或可能来自 apply-templates 的标签一样。
那么如何将html代码放入属性中呢?
Using xslt i want to create an attribute:
<span class="tooltip">
<xsl:attribute name="onmouseover">
<xsl:text>javascript:function(</xsl:text>
<span class="label">Aggiunta</span>
<xsl:apply-tempaltes/>
<xsl:text>)</xsl:text>
</xsl:attribute>
The problem is that only the pure text is putted inside the attribute, like
<span class="tooltip" onmouseover="javascript:function(Aggiunta ...)">
whithout the span tags or the tags that may come from apply-templates.
So how can I put html code into an attribute?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
如果您尝试生成正确的 xhtml,您实际上根本不应该这样做,而应该让您的属性值引用不包含这些字符的更简单的 javascript。
定义格式正确的 XML 的规则明确禁止属性值包含“<”特点。请参阅W3C 建议。
If you're trying to produce correct xhtml, you really shouldn't do this at all, but make your attribute value reference a simpler javascript not containing these characters.
The rules defining well-formed XML explicitly forbid attribute values from containing the '<' character. See the W3C Recommendation.
您应该将事件绑定到 HTML 元素,而不是直接写为属性。
该示例基于 jQuery。
HTML 应该看起来类似:
You should bind event to HTML elements not writing directly as attribute.
This sample is based on jQuery.
and HTML should look similar like so:
最好的选择是使用外部 JavaScript 文件。立即修复将包括使用 CDATA 标签。
请注意,内联 JavaScript 仅在某些情况下接受变量。
XML 规范对字符数据有何规定(例如属性值)
the best option would be using an external JavaScript file. an immediate fix would include the use of CDATA tags.
note that inline JavaScript accepts variables only under certain circumstances.
what the XML Specs say about Character Data (e.g. attribute values)