从隐藏字段执行javascript函数

Execute javascript function from hidden field

本文关键字:javascript 函数 执行 字段 隐藏      更新时间:2023-09-26

我使用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);
}

这工作,当我改变到酒吧选项卡,但我不知道如何,如果我可以执行这段代码,而不是使用警报(警报只用作测试)。

我要执行的javascript函数:

displayBigSuppPub('getImage.php?path=resources/images/members/21214/Tulips.jpg&canvasWidth=640', 'Tulips.jpg');

此函数与成员的公共信息上的onclick事件一起使用时可以正常工作。

eval()应该做(但不是一个很好的解决方案)试一试:

if(sTab == "publicites") {
    scriptAdded = document.getElementById('scriptToAdd').value;
    eval(scriptAdded);
}

这与xlst无关,但无论如何。

如果你这样做,就不需要:

<script type="text/javascript" language="Javascript">