asp查询xml的代码实现无刷新 模糊查询

来源:新云 时间:2008-04-30 15:39:00 



<html>
<head>
<title>不刷新页面查询的方法</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<script language="javascript">
<!--初始化,将数据岛中数据装入列表框中-->
function loadinsel()
{
var employeeid,employeelastname;          //分别存放雇员ID和雇员名字
root=document.all.xmlemployees.childNodes.item(0); //返回第一个元素--employee
for(i=0;i<root.childNodes.length;i++){
 getnode=root.childNodes(i);            //得到empolyee的一个子节点
employeeid=root.childNodes(i).getAttribute("emid");//得到雇员ID
for(j=0;j<getnode.childNodes.length;j++){
employeeinf=getnode.childNodes(j).nodeName;
if(employeeinf=="lastname"){
employeelastname=getnode.childNodes(j).text; //得到雇员名字
}
}
//将得到的employeeid和employeelastname写进select中
if(employeeid!="" && employeelastname!=""){
option1=document.createElement("option");
option1.text=employeelastname;
option1.value=employeeid;
employeelist.add(option1);
}
}
}

<!--初始化,从数据岛中检索数据,装入列表框中-->
function findemployee(){
var employeelastname,employeeid;               //分别存放雇员名字和雇员ID
employeelastname="";
employeeid="";
findtext=window.findcontent.value;              //得到检索条件
//清除列表框
employeecount=employeelist.length
for(i=employeecount-1;i>=0;i--){
employeelist.remove(i);
}
root=window.xmlemployees.childNodes(0);
for(i=0;i<root.childNodes.length;i++){
getitem=root.childNodes(i);                //得到empolyee的一个子节点
employeeid=root.childNodes(i).getAttribute("emid");    //得到雇员ID
for(j=0;j<getitem.childNodes.length;j++){
if(getitem.childNodes(j).nodeName=="lastname"){
employee_temp=getitem.childNodes(j).text;
if(employee_temp.indexOf(findtext)!=-1){      //查找匹配项
employeelastname=employee_temp;         //找到名字匹配的雇员
}

}

}
//将符合条件的雇员信息写进select中
if(employeeid!="" && employeelastname!=""){
option1=document.createElement("option");
option1.value=employeeid;
option1.text=employeelastname;
window.employeelist.add(option1);
employeeid="";
employeelastname="";
}
}
}
</script>
<body bgcolor="#FFFFFF" text="#000000" onload="javascript:loadinsel()">
<table width="80%" border="1">
<tr>
<td> 请输入查询条件:
<input type="text" name="findcontent">
<input type="button" name="Submit" value="查找" onclick="javascript:findemployee()">
</td>
</tr>
<tr>
<td> 查询结果:
<select name="employeelist">
</select>
</td>
</tr>
</table>
<?xml version="1.0" encoding="gb2312"?>
<%
servername="wyb" '服务器名
user="sa" '用户名
pw="" '用户密码
databasename="northwind" '数据库名
set conn=server.CreateObject("adodb.connection")
conn.Open "DRIVER=SQL Server;SERVER="&servername&";UID="&user&";pwd="&pw&";DATABASE="&databasename
set rs=server.CreateObject("adodb.recordset")
sql="Select employeeid,lastname from employees order by employeeid"
rs.Open sql,conn%>
<!--将数据库中信息放入数据岛中-->
<xml id="xmlemployees">
<employee>
<%do while not rs.eof%>
<employeeitem emid="<%=rs("employeeid")%>">
  <lastname><%=rs("lastname")%></lastname>
</employeeitem>
<%rs.movenext%>
<%loop%>
</employee> </xml>
<%rs.close
set rs=nothing
%>
</body>
</html>


标签:
0
投稿

猜你喜欢

  • 一个完美网站的101项指标.第七部分.W3C标准

    2008-03-01 09:31:00
  • asp实现通过session来统计在线人数的方法

    2007-08-13 12:56:00
  • 走中国特色的网站重构道路

    2010-04-08 16:10:00
  • MS SQL 查询数据在数据库中所在行

    2009-04-26 19:36:00
  • 如何用Response.Write调用代替内嵌表达式?

    2010-06-13 14:33:00
  • 论Asp与XML的关系

    2008-03-05 12:01:00
  • httpwatch 的页面元素加载时间表

    2008-02-13 08:28:00
  • asp简单的仿图片验证码

    2008-03-12 11:54:00
  • 互联网产品设计零碎记

    2010-09-25 12:49:00
  • 关于网站导航设计的探讨

    2008-02-28 13:20:00
  • Hibernate Oracle sequence的使用技巧

    2009-06-19 17:25:00
  • 详细讲解MySQL数据库对文件操作的封装

    2008-12-17 16:08:00
  • ASP使用xmlhttp定时触发事件

    2008-08-19 18:09:00
  • Mootools 1.2教程(16)——排序类和方法简介

    2008-12-10 14:18:00
  • 连续字符自动换行的解决方案

    2008-12-04 16:39:00
  • [译文]The seven rules of Unobtrusive JavaScript

    2008-09-29 12:10:00
  • 让JavaScript拯救HTML5的离线存储[译]

    2009-05-15 12:26:00
  • 将后台数据从Berkeley的文件DB转到MySQL

    2009-01-04 13:31:00
  • 帮你六步改善SQL Server安全规划全攻略

    2009-01-20 15:07:00
  • 一个很棒的js图片代码

    2009-12-17 18:36:00
  • asp之家 网络编程 m.aspxhome.com