代码在JQuery01中
Jquery之前没怎么尝试过,这次来试下
/**
* 页面装载完成时的方法
*/
$(document).ready(function() {
alert("finish");
// Jquery 先通过$找到某个元素,然后添加事件
$("#velidateButton").click(function() {
var userName = $("#userName").val();
if (userName.length == 0 || userName == "") {
alert("请先填写用户名");
} else {
// 发送到服务器端
$.get("UserVelidateServlet?userName=" + encodeURI(encodeURI(userName)), null, function(
response) {
// 接受服务器端返回的参数,将文本数据添加到div中,response是文本类型的数据
$("#result").html(response);
});
}
});
$("#userName").keyup(function() {
//获取当前文本框中的内容
var value = $(this).val();
if(value.length == 0 || value == ""){
//让边框为红色,并且带背景图
$("#userName").addClass("userText");
}else{
//去掉边框和背景图
$("#userName").removeClass("userText");
}
});
});
在传参时候将userName进行两次encodeURI编码
encodeURI(encodeURI(userName))
String userName = request.getParameter("userName");
userName = java.net.URLDecoder.decode(userName, "utf-8");
在服务器端用URLDecoder.decode进行转码,在后台输出为中文,没问题
但是传到前台又会变成乱码
response.setContentType("text/html; charset=utf-8");
PrintWriter out = response.getWriter();
需要在获取PrintWriter前对response设置编码格式
这时候就ok了....