如何在xslt中传递js var

时间:2010-09-02 11:22:44

标签: javascript jquery xslt

我有一个类似的javascript变量:

var str = "AA,BB,CC,AA,BB,DD";
        var totlength = str.split(",").length;
        var xx = str.split(",");
        for (var i = 0; i < totlength; i++) {
            alert(xx[i]);   

        }

我可以使用上面的方法打印这个值。现在问题是我必须使用xslt来创建一个<ul><li>结构,而<li>应该填充这个js值。 所以结构会像 -

<ul>
<li>AA</li>
<li>BB</li>
<li>CC</li>
<li>AA</li>
</ul>

所以结构将在xslt中,值将来自js,我正在写一个xslt文件(没有单独的js文件)。如何实现这一点。

1 个答案:

答案 0 :(得分:0)

在这种情况下没有与XLT的链接; 我想你可以通过以下方式实现你想要的目标:

<xsl:template match="LIST">
  <div id="myDiv">
    <script type="text/javascript">

    var str = "<xsl:value-of select="."/>";

    var list = document.createElement("ul");
    var totlength = str.split(",").length;
    var xx = str.split(",");
    for (var i = 0; i < totlength; i++) {
        var li = document.createElement("li") ;
        li.appendChild(document.createTextNode(xx[i])) ;    
        list.appendChild(li);
    }
    document.getElementById("myDiv").appendChild(list);
    </script>
  </div>
</xsl:template>

包含LIST标记的XML文件:

<LIST>AA,BB,CC</LIST>