这种是比较原始的ajax用法,现在一般都是jquery、ajax一起用了,也在学习中,暂且纪念下这个比较傻逼的写法吧,这种写法不好,能不用就不用。
jsp里:
var xmlHttp;
var result = false;
function check() {
var bookday = document.bookInsertForm.bookInsertForm_bookDay.value;
var tid1 = document.bookInsertForm.bookInsertForm_tid1.value;
var tid2 = document.bookInsertForm.bookInsertForm_tid2.value;
var roomid = document.bookInsertForm.bookInsertForm_roomId.value;
if (bookday.length == 0) {
document.getElementById("bookdayDiv").innerHTML = "<font color='red'>请选择日期</font>";
} else if (tid1.length == 0) {
document.getElementById("tid1Div").innerHTML = "<font color='red'>请选择开始时间</font>";
} else if (tid2.length == 0) {
document.getElementById("tid2Div").innerHTML = "<font color='red'>请选择结束时间</font>";
} else if (roomidDiv.length == 0) {
document.getElementById("roomidDiv").innerHTML = "<font color='red'>请选择房间</font>";
} else {
document.getElementById("checkDiv").innerHTML = "<font color='red'>检测中...</font>";
if (window.ActiveXObject) {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");//IE实例
} else if (window.XMLHttpRequest) {
xmlHttp = new XMLHttpRequest();//其他浏览器实例
}
var uri = "/bookRoom/book/book!userInsertReserve.action?bookDay="
+ bookday
+ "&bookTimeStartId="
+ tid1
+ "&bookTimeEndId="
+ tid2 + "&roomId=" + roomid;
uri = encodeURI(uri);
uri = encodeURI(uri);
xmlHttp.open("post", uri, true);
xmlHttp.onreadystatechange = function() {//回调函数判断当前状态是否是响应状态
if (xmlHttp.readyState == 4) {
if (xmlHttp.status == 200) {
if (xmlHttp.responseText == "true") {
document.getElementById("checkDiv").innerHTML = "<font color='red'>该时间段已经被预定啦!</font>";
} else {
document.getElementById("checkDiv").innerHTML = "<font color='red'>可以预定!</font>";
}
}
}
}
xmlHttp.send(null);
}
}
<input type="button" value="检查" onClick="check();">
<input type="submit" value="确认">
action:
/**
* 用户增加预定记录
*
* @return
* @throws IOException
*/
public String userInsertReserve() throws IOException {
// 获取session
ActionContext ctx = ActionContext.getContext();
UserBean uBean = new UserBean();
uBean = (UserBean) ctx.getSession().get("user");
String s = uBean.getUserName();
ReserveBean reserveBean = new ReserveBean();
reserveBean.setBookDay(bookDay);
reserveBean.setBookTimeEndId(bookTimeEndId);
reserveBean.setBookTimeStartId(bookTimeStartId);
reserveBean.setBookUserName(s);
reserveBean.setRoomId(roomId);
if (bookRoomService.insertReserve(reserveBean)) {
clearVal();
return userQueryList();
}
return ERROR;
}
/**
* 判断是否可以预定,并返回结果
*
* @return
* @throws IOException
*/
public String checkReserve() throws IOException {
@SuppressWarnings("unused")
HttpServletRequest request = (HttpServletRequest) ActionContext
.getContext().get(ServletActionContext.HTTP_REQUEST);// 获取request
HttpServletResponse response = (HttpServletResponse) ActionContext
.getContext().get(ServletActionContext.HTTP_RESPONSE);
ReserveBean reBean = new ReserveBean();
reBean.setBookDay(bookDay);
reBean.setRoomId(roomId);
reBean.setBookTimeStartId(bookTimeStartId);
reBean.setBookTimeEndId(bookTimeEndId);
Integer count = bookRoomService.checkReserve(reBean);
if (count != 0) {
PrintWriter out = response.getWriter();
out.print("true");
out.flush();
out.close();
}
return null;
}