通过 XSL 变量内联 JavaScript 函数

Pass through XSL variable to inline JavaScript function

如何将 xsl 变量传递给我的内联 JavaScript 函数?我想反过来处理它并填充一个 table 列。

  <td>
    <xsl:variable name="symbol" select="symbol"/>
    <script language="javascript">
      <![CDATA[
        $(document).ready(function () {
          getPrice('<xsl:value-of select="symbol"/>');
        });

        function getPrice(symbol)
        {
          alert(symbol);
          var target = document.getElementById(symbol + '_price');
          $( target ).html( 'test' );
        }
      ]]>
    </script>
    <div id='{symbol}_price'></div>
  </td>

如果您 运行 使用浏览器中的内置 XSLT 1.0 引擎,请记住 XSLT 代码只是生成 HTML。您的 XSLT 代码正在生成一个包含 Javascript 函数源代码的页面,但您无法在生成该页面时执行此函数。您可以做的是生成调用该函数的 HTML 代码,但这在您的情况下听起来不太有用。

此外,在 td 元素中生成包含 script 元素的 HTML 似乎不是一个好主意。

但是你为什么要调用 Javascript?据我所知,您的 Javascript 函数所做的就是读取源代码 XML。当然,这样做的方法是使用 XPath 表达式?