我的ajax前臺程序:
var xmlhttp;
function createXMLHttpRequest() {
if (window.ActiveXObject) {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
else if (window.XMLHttpRequest) {
xmlHttp = new XMLHttpRequest();
}
}
function checkNameExsit(textId) {
if(document.getElementById(textId).value!="") {
var url = "ajaxcheckadmin.jsp?userName="+encodeURI(encodeURI(document.getElementById(textId).value)); //得到需要驗證的字段s
createXMLHttpRequest(); //獲得交互
xmlHttp.onreadystatechange = handleStateChange; //執行操作
xmlHttp.open("GET", url, true);
//xmlHttp.setRequestHeader("Content-Type", "text/html;charset=gbk");
xmlHttp.send(null);
}
}
function handleStateChange() {
if(xmlHttp.readyState == 4) {
if(xmlHttp.status == 200) {
var results = xmlHttp.responseText;
if(eval(results)){
flag=false;
document.getElementById("textError").innerHTML="已經存在!";
}else{
flag=true;
document.getElementById("textError").innerHTML="";
}
}
}
}
後臺程序:
//start:用於解決AJAX亂碼問題
java.net.URLDecoder urlDecoder = new java.net.URLDecoder();
String s = urlDecoder.decode(userName,"UTF-8");
解決AJAX亂碼問題,用過濾器後並在網頁中數據庫中全是GBK編碼,但是AJAX 傳值時必須經以上反紅處理所示才能得到漢字,獻給大家,一塊探討。