选择元素我有什么,我想撒克逊CE XSLT 2.0处理器来转换XML文件:XSLT 2.0遍历数组的属性
<books>
<book name="book1">
<book name="book2">
<book name="book3">
</books>
我想通过一个数组来过滤这个XML文件。这阵是一个网页的选择复选框的结果,并传递给XSLT所有通过setParameter:
$("input:checkbox[id='books']").each(function() {
books.push($(this).val());
});
//books: ["book1", "book2"]
xslt = Saxon.requestXML("xsltfile.xsl");
xml = Saxon.requestXML("xmlfile.xml");
var xsltProc = Saxon.newXSLT20Processor(xslt);
xsltProc.setParameter(null, "books", books);
现在我想选择其中名称数组中发生的所有书籍。
XSLT:
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:param name="books"></xsl:param>
<xsl:variable name="mybooks" select="/books/book[@name=$param[1]]"/>
</xsl:stylesheet>
我怎么能循环阵列上,选择只与数组名的书吗?
您已经编辑了示例并在参考'$ books'中使用了正确的参数名称,但是我想知道为什么您只需要与'$ books [1]'比较,如果您想根据数组中的所有项进行过滤。 – 2014-12-02 10:11:52
我在阅读这个问题时意识到了错误。为了保持你的正确答案,我把它改回来了:)谢谢! – 2014-12-02 10:14:45