如何获取函数的字符串名,以便在JavaScript中调用它?

如何获取函数的字符串名,以便在JavaScript中调用它?,javascript,struts2,Javascript,Struts2,我有一个jsp: <div id="searchGrid"> <table id="list" class="scroll"></table> <div id="pager" class="scroll" style="text-align:center;"></div> </div> <s:hidden id="hdnFonction" value="<s:property value='fon

我有一个jsp:

<div id="searchGrid">
    <table id="list" class="scroll"></table>
    <div id="pager" class="scroll" style="text-align:center;"></div>
</div>
<s:hidden id="hdnFonction" value="<s:property value='fonction'/>" />
<h1><s:property value='fonction'/></h1>

<script type="text/javascript">
    $(document).ready(function(){
        var fn = window[$("#hdnFonction").val()];

        alert($("#hdnFonction").val());

        fn();
    });
</script>

$(文档).ready(函数(){
var fn=window[$(“#hdnFonction”).val();
警报($(“#hdnFonction”).val();
fn();
});
因此,在h1标记之间,我有一个正确的值(函数的字符串名称)


但在警报框中,我有struts2“property”标记,就像struts标记在文档准备就绪后被解释一样。。。这会很奇怪不?

你不能像那样将Struts2标记嵌套在彼此的内部,因此
标记被解析为文本,而不是Struts2标记


您必须将
的值存储到脚本变量中,然后将其用作
标记中的值。

当您说“在警报框中我有struts2'property'标记”时,您的意思是警报显示“”?听起来像是服务器问题,没有替换该标记。这不是一个JavaScript问题。当你可以做像
这样简单的事情时,做这一切的目的是什么,有什么理由吗this@Umesh阿瓦斯蒂:你完全正确。。。我把事情搞复杂了。。。非常感谢。我可以验证你的评论吗?@mlwacosmos:评论不是答案,你可以对评论进行投票,以表明它们确实帮助了你。你可能也是对的。。。我投票支持Umesh Awasthi的评论,这是正确的答案