以下是JSP
的代码片段<s:form action="SubmitLogon" onfocus="username">
<s:hidden name="lastsession" value="N"/>
<s:hidden name="duplicateurl" />
<table>
<tr>
<td colspan="2" align="right">
<button type="Submit" value="Login" style="WIDTH: 98px; HEIGHT: 39px; background:Transparent; border:None" onclick="submitLogon()">
<img src='/images/btn_login.jpg' />
</button>
</td>
</tr>
</table>
</s:form>
以下是我的javasacript代码
<script type="text/javascript" language="JavaScript1.2">
function submitLogon(){
//alert('urlUnEncoded-----------'+document.URLUnencoded);
document.LogonForm.duplicateurl.value = document.URLUnencoded;
//alert('duplicateurl-----------'+document.LogonForm.duplicateurl.value);
var dupURL = document.LogonForm.duplicateurl.value;
alert("dupURL------------"+dupURL);
document.forms[0].submit();
}
</script>
当我点击提交时,表单将被提交给StrutsAction(SubmitLogon)但隐藏的参数(即duplicateurl变为空,甚至不为空)
duplicateurl在Action类中定义了它的所有setter和getter,我确定Action类没有问题
此外,下面的代码存在于javascript函数中,不会弹出警报但表单已成功提交
alert("dupURL------------"+dupURL);
提供的任何解决方案对我都有帮助