| 
 今天刚开始学习jQuery EasyUI, 做了个简单的登录窗口, 用户和密码两个字段, 访问的是Servlet, 可以在后台打印出两个字段的值,简单的验证了一下值然后跳转, 结果浏览器无反应 页面代码如下: 
<div class="easyui-panel" title="用户登录" style="width:300px">
			<div style="padding:10px 0 0 40px">
				<form id="ff" method="post" action="http://localhost:8080/easyui/UserLoginServlet">
					<table>
						<tr>
							<td>
								用户:
							</td>
							<td>
								<input class="ww" type="text" name="name"></input>
							</td>
						</tr>
						<tr>
							<td>
								密码:
							</td>
							<td>
								<input class="ww" type="password" name="password"></input>
							</td>
						</tr>
					</table>
				</form>
			</div>
			<div style="text-align:center;padding:5px">
				<a href="javascript:void(0)" class="easyui-linkbutton"
					onclick="submitForm()">登录</a>
				<a href="javascript:void(0)" class="easyui-linkbutton"
					onclick="clearForm()">取消</a>
			</div>
		</div>
		<script>
			function submitForm(){
				$(""#ff"").form(""submit"");
			}
			function clearForm(){
				$(""#ff"").form(""clear"");
			}
		</script>
后台Servlet如下: 
public class UserLoginServlet extends HttpServlet {
	public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		this.doPost(request, response);
	}
	public void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
		request.setCharacterEncoding("UTF-8");
		String name = request.getParameter("name");
		String password = request.getParameter("password");
		System.out.println("用户: " + name);
		System.out.println("密码: " + password);
		if("admin".equals(name) && "123".equals(password)) {
			request.getRequestDispatcher("/success.html").forward(request, response);
		} else {
			response.sendRedirect("http://localhost:8080/easyui/fail.html");
		}
	}
}
工程web.xml如下: <?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> <servlet> <servlet-name>UserLoginServlet</servlet-name> <servlet-class>com.wisher.easyui.servlet.UserLoginServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>UserLoginServlet</servlet-name> <url-pattern>/UserLoginServlet</url-pattern> </servlet-mapping> <welcome-file-list> <welcome-file>index.html</welcome-file> </welcome-file-list> </web-app> success.html和fail.html都是创建在WebRoot目录下面  | 
|
![]() 4分  | 
 你把form表单里面的action值改成你servlet在xml中的servlet-name试一试,就是UserLoginServlet 
 | 
![]() 4分  | 
 有异常错误信息吗? 
 | 
![]() 4分  | 
 request.getRequestDispatcher改为this.getServletContext().getRequestDispatcher 
 | 
![]() 4分  | 
 request.getRequestDispatcher(“/success.html”).forward(request, response);
 
response.sendRedirect(“http://localhost:8080/easyui/fail.html”); success.html和fail.html都是创建在WebRoot目录下面? 目测是路径  | 
![]()  | 
 试过了,java后台仍能获取两个值,还是无法跳转  | 
![]()  | 
 我分别使用的是谷歌浏览器和Opera浏览器,然后都打开了页面调试工具,没有报错,另外java后台也无错误显示  | 
![]()  | 
 代码改成你说的那样,还是没反应,关键是不报错,也不跳转。。。  | 
![]() 4分  | 
 如果 都进了doPost方法,那几行跳转代码是没有问题的啊?你试着简单的测试,不要使用jquery 
js像这样 document.forms[0].submit();看是不是环境的问题。  | 
![]()  | 
 解决了,果然是前台使用的jQuery的原因造成的,改成最原始的html form提交就正常了 
 | 
![]()  | 
 你这么做的话怎么实现 form的验证呢? 哪个为什么无法提交,我这也碰到了,。应该有办法解决的,。  | 
![]()  | 
 我也碰到了,就是无法跳转,感觉还是easyUI 没学明白 
 | 
                    
