function getDepartmentForSelect() {
createXMLHttpRequest();
var url = '../xxx.do';
XMLHttpReq.open("GET", url, true);
XMLHttpReq.onreadystatechange = handleDepartment;//指定响应函数
XMLHttpReq.send(null);
}
function handleDepartment() {
if (XMLHttpReq.readyState == 4) { // 判断对象状态
if (XMLHttpReq.status == 200) {
// 信息已经成功返回,开始处理信息
onreadyDepartment();
} else { //页面不正常
window.alert("您所请求的页面有异常。");
}
}
}
//创建XMLHttpRequest对象
function createXMLHttpRequest() {
if (window.XMLHttpRequest) { //Mozilla 浏览器
XMLHttpReq = new XMLHttpRequest();
}
else if (window.ActiveXObject) { // IE浏览器
try {
XMLHttpReq = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
XMLHttpReq = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {
}
}
}
}
function onreadyDepartment() {
var xmlResponse = XMLHttpReq.responseXML;
var departments = xmlResponse.getElementsByTagName("department");
if (departments.length == 0) {
return;
}
var queryDepartment = document.getElementById("departmentHidden").value;
var objSelect = document.getElementById("department");
var departmentArray = departments[0].firstChild.text.split(",");
var varItemHead = new Option();
objSelect.options.add(varItemHead); //头部
for (var i = 0; i < departmentArray.length; i++) {
var varItem = new Option(departmentArray[i], departmentArray[i]);
if (queryDepartment == departmentArray[i]) {
varItem.selected = true;
}
objSelect.options.add(varItem);
}
}
getDepartmentForSelect();
<input type="hidden" value="<%=queryDepartment%>" id="departmentHidden"/>
<select name="department" id="department" style="width:90px;"></select>
String returnDepartment = "";
List<String> departmentList = DepartmentPartDAO.getDepartmentList();
StringBuilder departmentSB = new StringBuilder();
for (String str:departmentList){
departmentSB.append(str+",");
}
if(departmentSB.length()>0){
returnDepartment = departmentSB.substring(0,departmentSB.length()-1);
}
PrintWriter out;
try {
response.setContentType("text/xml;charset=UTF-8");
response.setHeader("Cache-Control", "no-cache");
out = response.getWriter();
out.println("<response>");
out.println("<department>" + returnDepartment + "</department>");
out.println("</response>");
out.close();
} catch (IOException e) {
e.printStackTrace();
}
return null;
request.setAttribute("queryDepartment", InterceptPartQueryForm.getDepartment());
分享到:
相关推荐
xmlHttpRequest用法示例其中包括普通用法,与返回xml的用法,注释详细,代码清晰。
用法 XMLHttpRequest的用法 ajax同步和异步的区别
XMLHttpRequest 实例 基于MyEclipse的一个工程 里面有很多短小的实例 一个一个说明XMLHttpRequest 的用法 对初学者很有帮助
由于XMLHttpRequest不是一个W3C标准,所以可以采用多种方法使用JavaScript来创建XMLHttpRequest的实例。Internet Explorer把XMLHttpRequest实现为一个ActiveX对象,其他浏览器(如Firefox、Safari和Opera)把它实现...
主要介绍了JS XMLHttpRequest原理与使用方法,结合实例形式深入分析了JS XMLHttpRequest相关原理、使用方法及操作注意事项,需要的朋友可以参考下
压缩包“ajax.rar”内含:“《掌握Ajax.chm》”和“《XMLHttpRequest手册.chm》”。 1、《掌握Ajax.chm》包含下列内容: 掌握 Ajax,第 1 部分: Ajax 入门简介 ... 掌握 Ajax,第 2 部分: 使用 JavaScript 和 Ajax ...
通过介绍更好的了解XMLHttpRequest的使用方法,进一步也解ajax的使用方法。
由于XMLHttpRequest不是一个W3C标准,所以可以采用多种方法使用JavaScript来创建XMLHttpRequest的实例。 Internet Explorer把XMLHttpRequest实现为一个ActiveX对象,其他浏览器(如Firefox、Safari和Opera)把它...
请求的类型是由这个XMLHttpRequest对象的open()方法的第三个参数async的值决定的。如果该参数的值为false,则该XMLHttpRequest请求以同步模式进行,否则该过程将以异步模式完成。 两种通信模式:同步和异步请求: ...
而设计AJAX时使用的一个重要的技术(工具)就是XMLHTTPRequest对象了。这里海啸把我学习XMLHTTPRequest对象的一点资料拿出来跟大家一起分享。文中的资料都是海啸在学习时在网上收集的,如果您开过,那就再加深下印象...
本文实例讲述了不使用XMLHttpRequest对象实现Ajax效果的方法。分享给大家供大家参考,具体如下: 前言: 我以前接触Ajax的时候,只是用Jquery的api来实现Ajax效果,对其并没有细细研究,最近在学习Ajax的原理,会不...
在JS中实例化一个xmlHttpRequest对象,然后根据网上的说明POST的地址为:asmx页面地址/Web方法名。在RequestHeader中设置Content-Type为application/json; charset=utf-8,SOAPAction设为Web方法名。Web方法的参数用...
由于之前写源生项目, 采用jQuery的 Ajax 请求后端接口,觉得在...使用的是 XMLHttpRequest 发送请求。 这个js 类我还添加了请求拦截,以及请求加载中弹框,一个简单实用的工具。 注释多。欢迎有兴趣的同行,浏览使用!
首选的安装方法是将库添加到package.json的“ dependencies部分。 { " dependencies " : { " xhr2 " : " * " } } 或者,可以使用npm直接安装该库。 npm install xhr2 安装库后, require -ing将返回...
解决的办法就是创建一个XMLHttpRequset的对象池,如果池里有空闲的对象,则使用此对象,否则将创建一个新的对象。 下面是我最近写的一个简单的类:* XMLHttpRequest Object Pool * * @author legend * @...
在使用XMLHttpRequest中有没有遇到过,第一次使用是好的,刷新一下就不行了,清空一下缓存再刷新又好了。 这是在使用XMLHttpRequest中常遇到的一个问题,在有的时候XMLHttpRequest请求的结果会缓存在同一个URL中,...
了解XMLHttpRequest 对象就先从创建XMLHttpRequest 对象开始,在不同的浏览器中创建XMLHttpRequest 对象使用不同的方法: 先看看IE创建XMLHttpRequest 对象的方法(方法1): var xmlhttp=ActiveXobject(“Msxml12...
一般来说,使用XMLHttpRequest对象来进行登陆验证要经过以下这几个步骤 1.使用DOM方式获得输入框中的值 代码如下:var userName = document.getElementById(“userName”).value;2.创建XMLHttpRequest对象,这一步...