日期:2014-05-17  浏览次数:20715 次

js脚本提交表单到servlet后转发或重定向都无效(急)
表单的代码:
<form id="search" method="post" action="/MessageView">
<input type="hidden" name="FKeyID" />
<input type="hidden" name="FFID"/>
<input type="hidden" name="IsModel" />
</form>
js脚本中的提交代码:
function searchMS(keyid,ffid,isModel){
document.getElementById("FKeyID").value=keyid;
document.getElementById("FFID").value=ffid;
document.getElementById("IsModel").value=isModel;
alert(document.getElementById("FKeyID").value);
//document.getElementById("search").action="";
document.getElementById("search").submit();
}
servlet中的处理代码:
String id=request.getParameter("FKeyID");
String fid=request.getParameter("FFID");
String ismodel=request.getParameter("IsModel");
String pages="/views.jsp";
System.out.println("id="+id+" fid="+fid+" ismodel="+ismodel);
RequestDispatcher dis=this.getServletConfig().getServletContext().getRequestDispatcher(pages);
dis.forward(request,response);
描述:
1.js脚本可以正常运行,能将值带到hidden的value中,submit()也能提交
2.servlet中可以取得表单提交过来的值,打印显示也正常
问题:
RequestDispatcher dis=this.getServletConfig().getServletContext().getRequestDispatcher(pages);
dis.forward(request,response);
此段代码没有效果。
补充:
如果不用js提交,而用按钮提交,则servlet可以正常运行,转发有效。

------解决方案--------------------
超链接 调用JS事件加个return false;比如 onclick = "searchMS();return false;"
------解决方案--------------------
探讨
超链接 调用JS事件加个return false;比如 onclick = "searchMS();return false;"