Tôi đã có <a>
thẻ sau:XSL - Làm thế nào để vô hiệu hóa thoát đầu ra cho một thuộc tính?
<a href="http://myserver/_forms?url={@FileRef}&id=5">...</a>
Một trong các tập tin được gọi là "File's got apostrophe.xml"
. Đầu ra của XSL là:
<a href="http://myserver/_forms?url=/blah/File&#39;s got apostrophe.xml&id=5">...</a>
Vấn đề là các dấu nháy đơn là HTML-thoát (hai lần?) Vào &#39;
, mà phá vỡ liên kết.
Tôi cũng đã cố gắng sử dụng <xsl:attribute>
, với kết quả tương tự:
<a>
<xsl:attribute name="href">
<xsl:value-of select="concat('http://myserver/_forms?url=', @FileRef, '&id=5')"
disable-output-escaping="yes" />
</xsl:attribute>
</a>
Xuất ra <xsl:value-of select="@FileRef" disable-output-escaping="yes" />
hoạt động tốt - giá trị unescaped được in trên trang.
Làm cách nào để đặt thuộc tính mà không thoát chuỗi?
bạn đã thử lưu chuỗi vào biến và xuất ra? –
bạn đã thử các trình xử lý/trình duyệt xslt khác nhau chưa? – user306708
@Gaby - Tôi đã không thử điều đó, tôi nghĩ về nó, nhưng nó không có ý nghĩa. Nó không có vẻ tốt hơn là xuất ra trường '@ FileRef'. Bạn đang đề cập đến toàn bộ thẻ '', tương tự như câu trả lời của tpeczek? – Kobi