2016-02-26 82 views
0

您好我有一个JSP页面被调用从struts行动和设置会话变量,但是当我正在执行javascript函数不被调用如果或其他条件。当文本正在打印时,变量的值为true,但函数没有被调用。从struts标签调用javascript函数

<%@ page language="java" contentType="text/html; charset=UTF-8" 
    pageEncoding="ISO-8859-1"%> 
<%@ taglib prefix="s" uri="/struts-tags"%> 

<script type="text/javascript"> 

function test(){ 
    alert('inside test'); 
} 

function test2(){ 
    alert('inside 222'); 
} 
</script> 

<div id="body_content"> 
    <div id="content_cotainer"> 


<s:if test="%{ #session.testVariable}">  
           qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq 
           <script type="text/javascript"> test2()</script> 
         </s:if> 
         <s:else><script type="text/javascript"> test()</script>ddddddddddddddddd</s:else> 
    </div>     
</div>  

回答

0

把函数调用在身体的结尾,当DOM可用

<script> 
(function(testVariable) { 
    if (testVariable) 
    test2(); 
    else 
    test(); 
})(<s:property value="%{#session.testVariable}"/>); 
</script> 
</body> 
</html> 
+0

你读过这个吗? –

0

把你的第一个<script>块内<head>