我有以下xslt将数据转换为JQuery接受的格式.但是,因为JSON不接受数据字符串中的双引号,所以我需要替换"with escape sequence"
XML:
<?xml version="1.0" encoding="UTF-8"?>
<Rowsets>
<Rowset>
<Columns>
<Column Description="Element_1" SQLDataType="12" />
<Column Description="Element_2" SQLDataType="12" />
<Column Description="Element_3" SQLDataType="93" />
</Columns>
<Row>
<Element_1>test_data</Element_1>
<Element_2>test_quo"te</Element_2>
<Element_3>test_data</Element_3>
</Row>
</Rowset>
</Rowsets>
Run Code Online (Sandbox Code Playgroud)
目前的XSLT:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:java="http://xml.apache.org/xslt/java" exclude-result-prefixes="java">
<xsl:output method="text" media-type="text/csv" encoding="UTF-8"/>
<xsl:param name="RowDelim">],</xsl:param>
<xsl:param name="RowLast">]</xsl:param>
<xsl:param name="RowStart">[</xsl:param>
<xsl:param name="startBracket">{ </xsl:param>
<xsl:param name="JQTableData">"aaData": [</xsl:param>
<xsl:param name="JQTableEnd">] }</xsl:param>
<xsl:param name="FieldDelim">,</xsl:param>
<xsl:param name="StringDelim">"</xsl:param>
<xsl:param name="DateFormat">yyyy-MM-dd HH:mm:ss</xsl:param>
<xsl:template match="/">
<xsl:for-each select="Rowsets">
<xsl:for-each select="Rowset">
<xsl:value-of select="$startBracket"/>
<xsl:value-of select="$JQTableData"/>
<xsl:variable name="CurrentColumns" select="Columns"/>
<xsl:for-each select="Columns"> …Run Code Online (Sandbox Code Playgroud)