Ajax
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> <script type="text/javascript"> // 定义全局异步请求对象句柄 var xmlHttpRequest; // 根据不同浏览器创建不同的异步请求对象 function createXMLHttpRequest() { if(window.XMLHttpRequest) { // 非IE异步起请求对象创建 xmlHttpRequest = new XMLHttpRequest(); } else if(window.ActiveXObject){ // IE异步请求对象的创建 try { xmlHttpRequest = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) { xmlHttpRequest = new ActiveXObject("Msxml2.XMLHTTP"); } } } // 创建发送请求函数 function sendRequest() { // 判断异步请求对象是否为空 if(xmlHttpRequest == null) { createXMLHttpRequest(); // 调用创建异步请求对象的函数 } // 发送请求得到响应后回调函数 xmlHttpRequest.onreadystatechange = function() { // 判断响应状态为200 页面加载状态为4 才能处理响应结果 if(xmlHttpRequest.readyState==4 && xmlHttpRequest.status==200) { //alert(xmlHttpRequest.responseText); // 获取信息校验信息的标签 document.getElementById("msg").innerHTML=xmlHttpRequest.responseText; } }; // 获取文本框中输入的值 var typeName = document.getElementsByName("typeName")[0].value; // 打开请求 var url = "checkTypeNameServlet?typeName="+typeName; xmlHttpRequest.open("get",encodeURI(url)); //默认为异步请求(false 为异步,true 为同步) // 发送请求 xmlHttpRequest.send(null); } </script> </head> <body> <form action="checkTypeNameServlet" method="post"> 房间类型:<input name="typeName" onblur="sendRequest();" /> <span id="msg" style="font-size:13px;"></span><br/> <input type="submit" value="提交" /> </form> </body> </html>
<%@page import="com.hotel.entity.RoomType"%> <%@page import="java.util.List"%> <%@page import="com.hotel.dao.RoomTypeDao"%> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> <script type="text/javascript"> var xmlHttpRequest; // 创建异步请求对象的函数 function createRequest() { if(window.XMLHttpRequest) { // 非IE xmlHttpRequest = new XMLHttpRequest(); } else if(window.ActiveXObject) { //IE try { xmlHttpRequest = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { xmlHttpRequest = new ActiveXObject("Microsoft.XMLHTTP"); } } } // 创建发送请求对象的 函数 function sendRequest() { if(xmlHttpRequest==null) { createRequest(); } // 设置请求得到响应的回调函数 xmlHttpRequest.onreadystatechange = function() { if(xmlHttpRequest.readyState==4 && xmlHttpRequest.status == 200) { // 获取需要填充的下拉列表框 var select = document.getElementById("roomId"); // 清空下拉列表中的元素 select.options.length = 0; // 创建一个请选择的选项 var op = new Option("==请选择==","-1"); select.options.add(op); // 获取服务端响应的字符串[a,b,bc,b,cf,] var content = xmlHttpRequest.responseText; var str = content.substring(0,content.length-1); // 将处理好的字符串转化为一个数组 var params = str.split(","); // 循环为列表添加选项 for(var i=0;i<params.length;i++) { var op1 = new Option(params[i],params[i]); select.options.add(op1); } } }; // 获取选择的房间类型编号 var roomType = document.getElementById("roomType").value; //打开请求 xmlHttpRequest.open("GET","selectServlet?roomType="+roomType); // 发送请求 xmlHttpRequest.send(null); } </script> </head> <body> 房间类型: <select name="roomType" id="roomType" onchange="sendRequest();"> <option value="-1">==请选择==</option> <% // 直接调用查询所有房间类型信息的方法 List<RoomType> types = new RoomTypeDao().getTypes(); if(types!=null && types.size()>0) { for(RoomType type : types) { %> <option value="<%=type.getTypeID() %>"><%=type.getTypeName() %></option> <% }} %> </select> 房间号: <select name="roomId" id="roomId"> </select> </body> </html>
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。