我正在使用XSLT使用来自成员的XML数据创建javascript函数。我希望能够从模板中的<script>
元素执行此函数,如果可能的话。
如何创建javascript函数:
<XSL:variable name="ScriptToAdd">
<script type="text/javascript" language="Javascript">
<XSL:text>displayBigSuppPub('</XSL:text>
<XSL:value-of select="$suppPubPath" />
<XSL:text>', '</XSL:text>
<XSL:value-of select="$member/multiplePubs/multiplePub/@name" />
<XSL:text>');</XSL:text>
</script>
</XSL:variable>
<input type="hidden" id="scriptToAdd" value="{$ScriptToAdd}" />
当我签入源代码时,我可以在隐藏字段值中看到javascript函数。
我的模板中有一个<script>
元素,用于在配置文件选项卡之间切换,我想在选择“宣传”标签时在隐藏字段中执行该功能。
if(sTab == "publicites") {
scriptAdded = document.getElementById('scriptToAdd').value;
alert(scriptAdded);
}
当我更改为Pubs选项卡但我不知道如何执行此代码而不是使用alert时(警报仅用作测试),这是有效的。
我想要执行的javascript函数:
displayBigSuppPub('getImage.php?path=resources/images/members/21214/Tulips.jpg&canvasWidth=640', 'Tulips.jpg');
当与成员的宣传上的onclick事件一起使用时,此功能可正常工作。
答案 0 :(得分:1)
eval()
应该做(但不是一个非常好的解决方案)
尝试:
if(sTab == "publicites") {
scriptAdded = document.getElementById('scriptToAdd').value;
eval(scriptAdded);
}
这与xlst无关,但无论如何。
如果你这样做,就不需要:
<script type="text/javascript" language="Javascript">