[問題] ajax responseText 的問題
function showUsernameStatus() {
if (request.readyState == 4) {
if (request.status == 200) {
// document.write(request.responseText; // line 4
if (request.responseText == "okay") {
document.write("okay");
document.getElementById("username").className = "approved";
document.getElementById("register").disabled = false;
} else {
document.write("no");
document.getElementById("username").className = "denied";
// document.getElementById("username").focus();
// document.getElementById("username").select();
document.getElementById("register").disabled = true;
}
}
}
}
我試著要把 ajax 和 jsp 連起來
整個設計是輸入完 userName 跳到下一個欄位的時候
就馬上去 jsp 裡確認此 userName 有沒有註冊過
但當我在測試的時候 始終不會執行 line 5 的那個 if 區塊
即使我拿掉 line 4 的註解檢查過 確實已經從jsp傳回 "okay"
以下是 jsp 裡的code
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%
out.print( "okay" );
%>
我來自問自答好了@@
已解決
var result = request.responseText.slice(2,
request.responseText.length);
我加了上面這行
因為回傳的 Text 是的 length 多了2
所以要把前面兩個切掉 才是真正的值
不知道是否有更好的解決方法
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.160.107.107
※ 編輯: wind75609592 來自: 118.160.107.107 (08/04 21:13)