<script type="text/javascript"> function addUrl(){ //1、设置请求url地址 var name = document.getElementById("name").value; var text = document.getElementById("url").value; var url = "insertUrl.do?name="+name+ "&url="+text+"&time"+new Date() ; //2、创建xmlHttpRequest对象 xmlHttpRequest = createXmlHttpRequest(); //3、设置xmlHttpRequest对象的回调函数 xmlHttpRequest.onreadystatechange = execute ; //4、注册xmlHttpRequest对象 xmlHttpRequest.open("get",url,true); //5、发送请求 xmlHttpRequest.send(null); } //创建xmlHttpRequest对象方法 function createXmlHttpRequest(){ //如果是IE浏览器 if(window.ActiveXObject){ return new ActiveXObject("Microsoft.XMLHTTP"); } //非IE浏览器 if(window.XMLHttpRequest){ return new XMLHttpRequest(); } } //回调函数 function execute(){ //当xmlHttpRequest的状态为接收结果并完毕和服务器返回状态为正常执行刷新部分页面 if(xmlHttpRequest.readyState == 4 && xmlHttpRequest.status == 200){ if(xmlHttpRequest.responseText=="true"){ alert("添加成功!"); //添加到下拉列表 var obj = document.getElementById("myUrl"); var name = document.getElementById("name").value; var text = document.getElementById("url").value; var op = new Option(name,text); obj.options.add(op); //隐藏层 showAddUrl(); } } } 解析XML返回的例子 //回调函数 function execute(){ //当xmlHttpRequest的状态为接收结果并完毕和服务器返回状态为正常执行刷新部分页面 if(xmlHttpRequest.readyState == 4 && xmlHttpRequest.status == 200){ alert("添加成功!"); //添加到下拉列表 var obj = document.getElementById("myUrl"); //添加之前先清空列表 obj.options.length = 0 ; //获取xmlHttpRequest返回的xml对象 (利用JavaScript的DOM模型将此xml解析出来) xmlDoc = xmlHttpRequest.responseXml; //获取根节点 myUrl = xmlDoc.documentElement ; //循环遍历根节点的所有子节点 for(var x=0;x<myUrl.childNodes.length;x++){ myUrl.childNodes[x]表示第x+1个子节点(onerecord) myUrl.childNodes[x].childNodes[1] 一条记录onerecord节点下的第二个节点name myUrl.childNodes[x].childNodes[1].firstChild表示一条记录onerecord节点下的第二个节点name的第一个子节点(文本节点)的值 var name = myUrl.childNodes[x].childNodes[1].firstChild.nodeValue ; var url = myUrl.childNodes[x].childNodes[2].firstChild.nodeValue ; var op = new Option(name,url); obj.options.add(op); } //隐藏层 showAddUrl(); } }