[高分]又碰到一个相当辣手的javascript问题? http://blog.donews.com/ccnet/archive/2005/07/22/476697.aspxLZ可以参考下上面这个联接里的代码 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>无标题文档</title><script type="text/javascript">var workerAge = 0;var xmlDoc;var items;function $(id){ return document.getElementById(id);}function loadXml(file){ var doc = null; if(window.ActiveXObject){ doc = new window.ActiveXObject("Msxml2.DOMDocument"); doc.async = false; doc.load(file); }else if(document.implementation && document.implementation.createDocument){ doc = document.implementation.createDocument("", "", null); doc.load(file); } return doc;}window.onload = function(){ xmlDoc = loadXml("index.xml"); if(xmlDoc){ items = xmlDoc.getElementsByTagName("item"); }else{ alert("加载XML文件失败!"); }};function searchUser(){ var kw = $("kw").value; var isFound = false; if(kw == ""){ alert("请输入要搜索的名字!"); return; } for(var i=0; i<items.length; i++){ if(items[i].getAttribute("name") == kw){ workerAge = items[i].getAttribute("age"); isFound = true; break; } } if(isFound){ alert("Yes:" + workerAge); }else{ alert("No"); }}</script></head><body><input type="text" name="kw" id="kw" /><input type="submit" name="btnSearch" id="btnSearch" value=" 搜索 " onclick="searchUser()" /></body></html> index.xml<?xml version="1.0" encoding="utf-8"?><items> <item id="001" name="joe" sex="male" age="23" job="developer" /> <item id="002" name="bill" sex="male" age="30" job="manager" /> <item id="003" name="white" sex="male" age="22" job="test" /> <item id="004" name="jack" sex="male" age="40" job="boss" /> <item id="005" name="kate" sex="female" age="18" job="waiter" /> </items> var worker={ id:null, name:null, sex:null, age:null, job:null, getWorkerInfoByName:function(name){ var workerInfo=this.readXML("XML/info.xml",name); if(workerInfo){ with(workerInfo){ this.id=attributes(0).value; this.name=attributes(1).value; this.sex=attributes(2).value; this.age=attributes(3).value; this.job=attributes(4).value; } } }, readXML:function(xmlFile,name){ var xmlDoc=new ActiveXObject("Microsoft.XMLDOM"); xmlDoc.async=false; xmlDoc.load(xmlFile); var root=xmlDoc.documentElement; var info=root.selectNodes("//items/item[@name='"+name+"']"); return info[0]; }};onload=function(){worker.getWorkerInfoByName("kate");} var worker={ id:null, name:null, sex:null, age:null, job:null, getWorkerInfoByName:function(name){ //XML文件存放路径请楼主自行更改 var workerInfo=this.readXML("XML/info.xml",name); if(workerInfo){ with(workerInfo){ this.id=attributes(0).value; this.name=attributes(1).value; this.sex=attributes(2).value; this.age=attributes(3).value; this.job=attributes(4).value; } } }, readXML:function(xmlFile,name){ var xmlDoc=new ActiveXObject("Microsoft.XMLDOM"); xmlDoc.async=false; xmlDoc.load(xmlFile); var root=xmlDoc.documentElement; var info=root.selectNodes("//items/item[@name='"+name+"']"); return info[0]; }};onload=function(){ //此处作测试用,worker变量中包含了该员工的所有信息 worker.getWorkerInfoByName("kate");}//以上代码在IE6平台上测试通过,仅仅提一个代码供参考,用XML做数据源读取数据关键是XPATH,有空去了解一下吧,这个很重要。 var worker={ id:null, name:null, sex:null, age:null, job:null, getWorkerInfoByName:function(name){ //XML文件存放路径("XML/info.xml")请楼主自行更改 var workerInfo=this.readXML("XML/info.xml",name); if(workerInfo){ with(workerInfo){ this.id=attributes(0).value; this.name=attributes(1).value; this.sex=attributes(2).value; this.age=attributes(3).value; this.job=attributes(4).value; } } }, readXML:function(xmlFile,name){ var xmlDoc=new ActiveXObject("Microsoft.XMLDOM"); xmlDoc.async=false; xmlDoc.load(xmlFile); var root=xmlDoc.documentElement; var info=root.selectNodes("//items/item[@name='"+name+"']"); return info[0]; } }; onload=function(){ //此处作测试用,worker变量中包含了该员工的所有信息 worker.getWorkerInfoByName("kate"); } //以上代码在IE6平台上测试通过,仅仅提一个代码供参考,用XML做数据源读取数据关键是XPATH,有空去了解一下吧,这个很重要。 var worker={ id:null, name:null, sex:null, age:null, job:null, getWorkerInfoByName:function(name){ var workerInfo=this.readXML("index.xml",name); if(workerInfo){ with(workerInfo){ this.id=attributes(0).value; this.name=attributes(1).value; this.sex=attributes(2).value; this.age=attributes(3).value; this.job=attributes(4).value; } } }, readXML:function(xmlFile,name){ var xmlDoc=new ActiveXObject("Microsoft.XMLDOM"); xmlDoc.async=false; xmlDoc.load(xmlFile); var root=xmlDoc.documentElement; var info=root.selectNodes("//items/item[@name='"+name+"']"); return info[0]; } }; onload=function(){ //此处作测试用,worker变量中包含了该员工的所有信息 worker.getWorkerInfoByName("kate"); } 以上代码在IE6平台上测试通过,仅仅提一个代码供参考,用XML做数据源读取数据关键是XPATH,有空去了解一下吧,这个很重要。 一段优秀的代码中至少要包含20%的注释,继续完善://定义员工对象,设置信息元素var worker={ id:null, name:null, sex:null, age:null, job:null, //<summary>根据员工姓名获取该员工基本信息</summary> //<param name="name">员工姓名</param> getWorkerInfoByName:function(name){ var workerInfo=this.readXML("index.xml",name); if(workerInfo){ //设置员工信息 with(workerInfo){ this.id=attributes(0).value; this.name=attributes(1).value; this.sex=attributes(2).value; this.age=attributes(3).value; this.job=attributes(4).value; } } }, //<summary>读取XML数据源</summary> //<param name="xmlFile">XML数据源存放路径</param> //<param name="name">员工姓名</param> //<returns>员工基本信息</returns> readXML:function(xmlFile,name){ var xmlDoc=new ActiveXObject("Microsoft.XMLDOM"); xmlDoc.async=false; xmlDoc.load(xmlFile); var root=xmlDoc.documentElement; var info=root.selectNodes("//items/item[@name='"+name+"']"); return info[0]; } }; //页面加载事件onload=function(){ //此处作测试用,worker变量中包含了该员工的所有信息 worker.getWorkerInfoByName("kate"); } IE8下 JS不兼容。。。 如何替换正则查找出的内容? JS如何过滤空格 在Prototype.js中,与getElementsByTagName()对应的是哪个方法啊?对不起啊,我只有这点分了! 问个框架问题 帮我看个动画打开的问题 如何写个样式,让当前网页的所有连接不在状态栏显示,但状态栏显示 关于frameSet 的问题 想做一个实时判断用户是否登录的效果 js关于文件上传过程中刷新后还可以继续上传的办法 怎样才能在淘宝的编辑器上执行javascript? select定位在FF下不通过
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<script type="text/javascript">
var workerAge = 0;
var xmlDoc;
var items;function $(id){
return document.getElementById(id);
}
function loadXml(file){
var doc = null;
if(window.ActiveXObject){
doc = new window.ActiveXObject("Msxml2.DOMDocument");
doc.async = false;
doc.load(file);
}else if(document.implementation && document.implementation.createDocument){
doc = document.implementation.createDocument("", "", null);
doc.load(file);
}
return doc;
}
window.onload = function(){
xmlDoc = loadXml("index.xml");
if(xmlDoc){
items = xmlDoc.getElementsByTagName("item");
}else{
alert("加载XML文件失败!");
}
};
function searchUser(){
var kw = $("kw").value;
var isFound = false;
if(kw == ""){
alert("请输入要搜索的名字!");
return;
}
for(var i=0; i<items.length; i++){
if(items[i].getAttribute("name") == kw){
workerAge = items[i].getAttribute("age");
isFound = true;
break;
}
}
if(isFound){
alert("Yes:" + workerAge);
}else{
alert("No");
}
}
</script>
</head><body>
<input type="text" name="kw" id="kw" />
<input type="submit" name="btnSearch" id="btnSearch" value=" 搜索 " onclick="searchUser()" />
</body>
</html>
<items>
<item id="001" name="joe" sex="male" age="23" job="developer" />
<item id="002" name="bill" sex="male" age="30" job="manager" />
<item id="003" name="white" sex="male" age="22" job="test" />
<item id="004" name="jack" sex="male" age="40" job="boss" />
<item id="005" name="kate" sex="female" age="18" job="waiter" />
</items>
var worker={
id:null,
name:null,
sex:null,
age:null,
job:null,
getWorkerInfoByName:function(name){
var workerInfo=this.readXML("XML/info.xml",name);
if(workerInfo){
with(workerInfo){
this.id=attributes(0).value;
this.name=attributes(1).value;
this.sex=attributes(2).value;
this.age=attributes(3).value;
this.job=attributes(4).value;
}
}
},
readXML:function(xmlFile,name){
var xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async=false;
xmlDoc.load(xmlFile);
var root=xmlDoc.documentElement;
var info=root.selectNodes("//items/item[@name='"+name+"']");
return info[0];
}
};
onload=function(){
worker.getWorkerInfoByName("kate");
}
id:null,
name:null,
sex:null,
age:null,
job:null,
getWorkerInfoByName:function(name){
//XML文件存放路径请楼主自行更改
var workerInfo=this.readXML("XML/info.xml",name);
if(workerInfo){
with(workerInfo){
this.id=attributes(0).value;
this.name=attributes(1).value;
this.sex=attributes(2).value;
this.age=attributes(3).value;
this.job=attributes(4).value;
}
}
},
readXML:function(xmlFile,name){
var xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async=false;
xmlDoc.load(xmlFile);
var root=xmlDoc.documentElement;
var info=root.selectNodes("//items/item[@name='"+name+"']");
return info[0];
}
};onload=function(){
//此处作测试用,worker变量中包含了该员工的所有信息
worker.getWorkerInfoByName("kate");
}//以上代码在IE6平台上测试通过,仅仅提一个代码供参考,用XML做数据源读取数据关键是XPATH,有空去了解一下吧,这个很重要。
var worker={
id:null,
name:null,
sex:null,
age:null,
job:null,
getWorkerInfoByName:function(name){
//XML文件存放路径("XML/info.xml")请楼主自行更改
var workerInfo=this.readXML("XML/info.xml",name);
if(workerInfo){
with(workerInfo){
this.id=attributes(0).value;
this.name=attributes(1).value;
this.sex=attributes(2).value;
this.age=attributes(3).value;
this.job=attributes(4).value;
}
}
},
readXML:function(xmlFile,name){
var xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async=false;
xmlDoc.load(xmlFile);
var root=xmlDoc.documentElement;
var info=root.selectNodes("//items/item[@name='"+name+"']");
return info[0];
}
}; onload=function(){
//此处作测试用,worker变量中包含了该员工的所有信息
worker.getWorkerInfoByName("kate");
} //以上代码在IE6平台上测试通过,仅仅提一个代码供参考,用XML做数据源读取数据关键是XPATH,有空去了解一下吧,这个很重要。
var worker={
id:null,
name:null,
sex:null,
age:null,
job:null,
getWorkerInfoByName:function(name){
var workerInfo=this.readXML("index.xml",name);
if(workerInfo){
with(workerInfo){
this.id=attributes(0).value;
this.name=attributes(1).value;
this.sex=attributes(2).value;
this.age=attributes(3).value;
this.job=attributes(4).value;
}
}
},
readXML:function(xmlFile,name){
var xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async=false;
xmlDoc.load(xmlFile);
var root=xmlDoc.documentElement;
var info=root.selectNodes("//items/item[@name='"+name+"']");
return info[0];
}
}; onload=function(){
//此处作测试用,worker变量中包含了该员工的所有信息
worker.getWorkerInfoByName("kate");
} 以上代码在IE6平台上测试通过,仅仅提一个代码供参考,用XML做数据源读取数据关键是XPATH,有空去了解一下吧,这个很重要。
var worker={
id:null,
name:null,
sex:null,
age:null,
job:null,
//<summary>根据员工姓名获取该员工基本信息</summary>
//<param name="name">员工姓名</param>
getWorkerInfoByName:function(name){
var workerInfo=this.readXML("index.xml",name);
if(workerInfo){
//设置员工信息
with(workerInfo){
this.id=attributes(0).value;
this.name=attributes(1).value;
this.sex=attributes(2).value;
this.age=attributes(3).value;
this.job=attributes(4).value;
}
}
},
//<summary>读取XML数据源</summary>
//<param name="xmlFile">XML数据源存放路径</param>
//<param name="name">员工姓名</param>
//<returns>员工基本信息</returns>
readXML:function(xmlFile,name){
var xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async=false;
xmlDoc.load(xmlFile);
var root=xmlDoc.documentElement;
var info=root.selectNodes("//items/item[@name='"+name+"']");
return info[0];
}
}; //页面加载事件
onload=function(){
//此处作测试用,worker变量中包含了该员工的所有信息
worker.getWorkerInfoByName("kate");
}