有没有可能在javascript中添加xsl变量,它本身就在xsl template..basically中,有两个单选按钮'classes‘和'events',一个文本框和搜索按钮。因此,当用户选择其中一个radio..is并在文本框中键入关键字时,我希望能够仅提取与所选radios相关的那些值,这是否可能?
<script type="text/javascript">
<![CDATA[
var selected_radio = $("input[name='EventRadio']:checked").val();
if (selected_radio == 'Classes')
{
<xsl:variable name="Rows" select="/dsQueryResponse/Rows/Row[XPATH to get only the selected radio related data]
}
]]>
</script>发布于 2011-12-30 04:37:05
CDATA节只是文本节点的一部分,因此它只是一个一维字符串 --这个字符串中任何看起来像标记(比如<xsl:variable>)的东西都是这个--字符串、文本。
因此,在CDATA部分中包含指令不会导致该字符串被解析和解释为XSLT指令。
可以从Javascript代码调用一个新的转换,并将所需的任何用户输入的数据作为外部参数传递给该转换。
发布于 2011-12-30 06:28:35
在我看来,您似乎对处理模型感到困惑。XSLT代码生成一个包含许多元素的HTML页面,其中一个是script元素。当它完成它的工作时,浏览器加载HTML页面并执行HTML页面中包含的onLoad javascript。此阶段的XSLT代码已经终止,您在Javascript中所做的任何操作都不可能影响XSLT的执行。
对于更具交互性的处理模型,可以考虑使用Saxon-CE,它允许通过XSLT模板处理用户交互事件。
https://stackoverflow.com/questions/8672921
复制相似问题