如何获取函数的字符串名,以便在JavaScript中调用它?
我有一个jsp:如何获取函数的字符串名,以便在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
<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的评论,这是正确的答案