摘自狐狸的代码:
test.xml:
-----------------------------------------
<?xml version="1.0" encoding="gb2312" ?>
<data>
<boy name="张三" age="12" />
<boy name="李四" age="15" />
<boy name="王二" age="20" />
</data>
test.htm(精确搜索)
-------------------------------------
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title> New Document </title>
<meta http-equiv="Content-Type" content="text/html;charset=gb2312">
<meta name="Generator" content="Microsoft FrontPage 4.0">
<meta name="Author" content="木野狐">
<meta name="keywords" content="">
<meta name="description" content="">
<hta:application innerBorder="no" singleInstance="true">
<script language="javascript">
window.moveTo(300,300);
window.resizeTo(300,300);
function loadBoysData()
{
var xd = new ActiveXObject("Microsoft.XMLDOM");
xd.async = false;
xd.load("test.xml");
var boys = xd.selectNodes("/data/boy[@name='" + keyword.value + "']");
for (var i = 0; i < boys.length; i++)
{
var tr = tbl.insertRow();
var td = tr.insertCell();
td.innerText = boys[i].getAttribute('name');
var td = tr.insertCell();
td.innerText = boys[i].getAttribute('age');
}
}
</script>
</head>
<body>
<input id="keyword">
<input type="button" value="加载数据" οnclick="loadBoysData();">
<table id="tbl" border="1">
<tr bgcolor=lightblue>
<td>姓名</td>
<td>年龄</td>
</tr>
</table>
</body>
</html>
test.hta(模糊搜索)
---------------------------------------
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title> New Document </title>
<meta http-equiv="Content-Type" content="text/html;charset=gb2312">
<meta name="Generator" content="EditPlus">
<meta name="Author" content="木野狐">
<meta name="keywords" content="">
<meta name="description" content="">
<hta:application innerBorder="no" singleInstance="true">
<script language="javascript">
window.moveTo(300,300);
window.resizeTo(300,300);
function loadBoysData()
{
var xd = new ActiveXObject("Microsoft.XMLDOM");
xd.async = false;
xd.load("test.xml");
var boys = xd.selectNodes("/data/boy");
var name = document.all("name").value;
var seach = 0;
for (var i = 0; i < boys.length; i++)
{
var xmlName = boys[i].selectSingleNode("name").text;
var xmlAge = boys[i].selectSingleNode("age").text
if (xmlName.indexOf(name) != -1)
{
var tr = tbl.insertRow();
var td = tr.insertCell();
td.innerText = xmlName;
var td = tr.insertCell();
td.innerText = xmlAge;
seach = 1;
}
}
if (seach == 0)
{
alert("没有找到与 '" + name + "' 相关的数据");
}
}
</script>
</head>
<body>
姓名:<input type="text" id="name"><br>
<input type="button" value="加载数据" οnclick="loadBoysData();">
<table id="tbl" border="1">
<tr bgcolor=lightblue>
<td>姓名</td>
<td>年龄</td>
</tr>
</table>
</body>
</html>