在Struts中用超链接提交表单

在使用struts的过程,由于要统一风格,页面表单提交改用超链接.

在struts提供的表单标记中,提供了<html:submit>提交标记,它被转化为button按扭,虽然用CSS美化过,效果还是不尽人意,其他标记也没有这种能力.于是作了这样的实验:

<html:form action="/rBroadAction.do" method="post">
 itemperpage:
 <html-el:text property="itemPerPage" size="5" value="${rBroadActionForm.itemPerPage}"/>
  &nbsp;
 go page:<html-el:text property="currentPage" size="5" value="${rBroadActionForm.currentPage}"/>
 <html:submit property="submit" value="Submit"/>
 <html:link page="#" linkName="submit" οnclick="document.forms[0].submit()">Submit</html:link><br>
 <a href="#" οnclick="document.forms[0].submit()">atest</a><br>
 <a href="javascript:" οnclick="document.forms[0].submit();">btest</a>
</html:form>

下面是提交出错后调试代码,高亮处为出错代码:

<form name="rBroadActionForm" method="post" action="/struts-blank/rBroadAction.do">
 itemperpage:
 <input type="text" name="itemPerPage" size="5" value="10">
  &nbsp;
 go page:<input type="text" name="currentPage" size="5" value="5">
 <input type="submit" name="submit" value="Submit">
 <a name="submit" href="/ccenter/rBroadAction.do" onclick="javascript:window.document.forms['rBroadActionForm'].submit()">Submit</a><br>

 <a href="#" οnclick="document.forms[0].submit()">atest</a><br>
 <a href="javascript:" οnclick="document.forms[0].submit();">btest</a>
</form>

结论:在struts表单中使用<html:link>以及普通html的<a>标记提供提交功能都不成功.

解决办法:使用普通表单.如下代码:

<form name="ba" action="rBroadAction.do">
itemperpage:
<input type="text" name="itemPerPage" size="5" value="<c:out value='${rBroadActionForm.itemPerPage}'/>">
 go page:
<input type="text" name="currentPage" size="5" value="<c:out value='${rBroadActionForm.currentPage}'/>">
 <a href="#" οnclick="document.ba.submit()">Submit</a>
 <!--a href="#" οnclick="document.forms[0].submit()">Submith</a><br-->
</form>

同样的脚本代码,在普通表单中畅行无阻,但在struts表单中却寸步难行.

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值