servlet:
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
System.out.println(1);
List<String> userNames = Arrays.asList("AAA","BBB","CCC");
String userName = request.getParameter("userName");
String result = null;
if(userNames.contains(userName)){
System.out.println(2);
result = "<font color='red'>该用户名已被使用</font>";
}else {
result = "<font color='green'>该用户名可以使用</font>";
}
System.out.println(3);
response.setContentType("text/html;charset=UTF-8");
response.setCharacterEncoding("UTF-8");
response.getWriter().print(result);
}
index.jsp
<script type="text/javascript" src="${pageContext.request.contextPath}/scripts/jquery-1.11.3.js/"></script>
<script type="text/javascript">
$(function(){
$(":input[name='username']").change(function(){
var val = $(this).val();
val = $.trim(val);
if(val!=""){
var url = "${pageContext.request.contextPath}/login";
var args = {"userName":val,"time":new Date()};
$.post(url,args,function(data){
$("#message").html(data);
});
}
});
});
</script>
</head>
<body>
<form action="" method="post">
UserName:<input type="text" name="username" />
<br/>
<div id="message"></div>
<br/>
<input type="submit" value="Submit" />
</form>
</body>
</html>
xml:
<servlet>
<description>
</description>
<display-name>UserNameServlet</display-name>
<servlet-name>UserNameServlet</servlet-name>
<servlet-class>com.servlets.UserNameServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>UserNameServlet</servlet-name>
<url-pattern>/login</url-pattern>
</servlet-mapping>
如果有/在后面是目录了,应该是这个问题导致jquery加载不进去,最好用$.ajax配置error看是否执行到error,$.post只有200状态才会执行success,只能用浏览器开发工具看ajax返回结果
<script type="text/javascript" src="${pageContext.request.contextPath}/scripts/jquery-1.11.3.js/"></script>
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。