黑马王子专栏
登录
注册
全站
当前博客
空间
博客
好友
相册
论坛
留言
用户操作
[即时聊天]
[发私信]
[加为好友]
黑马王子
ID:fzw98
共
36022
次访问,排名
3415(-1)
,好友
2
人,关注者
25
人。
java
fzw98的文章
原创 308 篇
翻译 0 篇
转载 24 篇
评论 22 篇
黑马王子的公告
最近评论
catheriner66:
推荐一下:开源人网站www.vifir.com 上面有比较全面系统的EXTJS学习资料
catheriner66:
推荐一下:开源人网站www.vifir.com 上面有比较全面系统的EXTJS学习资料
合肥菲利浦斯电子科技:
合肥菲利浦斯电子科技
菲利浦斯电子科技(合肥)有限公司,是美国菲利浦斯国际产业集团(Philipus Industry Group Ltd.CO.USA)在中国的市场运营和品牌管理机构,负责全面拓展“菲利浦斯”在中国市场的营销网络,造福中国民众。
针对中国目前严峻的室内空气污染形势,“菲利浦斯”把眼光投向中国市场。美国菲利浦斯国际产业……
合肥菲利浦斯电子科技:
合肥菲利浦斯电子科技
菲利浦斯电子科技(合肥)有限公司,是美国菲利浦斯国际产业集团(Philipus Industry Group Ltd.CO.USA)在中国的市场运营和品牌管理机构,负责全面拓展“菲利浦斯”在中国市场的营销网络,造福中国民众。
针对中国目前严峻的室内空气污染形势,“菲利浦斯”把眼光投向中国市场。美国菲利浦斯国际产业……
zhangwenbo:
学习了……
文章分类
Ajax
(RSS)
IT人生
(RSS)
Java
(RSS)
javascript
(RSS)
Linux
(RSS)
技术文摘
(RSS)
商业智能
(RSS)
社会百态
(RSS)
数据库开发应用
(RSS)
搜索引擎
(RSS)
网摘
(RSS)
娱乐
(RSS)
收藏
相册
真我的风采
存档
2008年12月(2)
2008年11月(4)
2008年10月(6)
2008年09月(26)
2008年08月(10)
2008年07月(5)
2008年05月(1)
2008年04月(18)
2008年03月(63)
2008年02月(10)
2008年01月(182)
2007年11月(5)
软件项目交易
订阅我的博客
javascript操作xml(增删改查)例子代码
收藏
新一篇: javascript实现日期操作的工具包
|
旧一篇: Java程序员面试必看 笑话 幽默 面试
关键字
: javascript操作xml(增删改查)
自己做了一个小东西,不是很好,但是对初学来说是一个不错的例子!
包括了
stu.hta
(
是HTML应用程序
);
stu.xml
注意下面的HTML代码必须保存为后缀名为
hta
否则当对XML文件进行操作(增删改)的时候就会提示没有权限!!
文件
stu.hta
代码如下:
<
html
>
<
head
>
<
title
>
数据岛的显示
</
title
>
<
style
type
="text/css"
>
...
#findPanel
{...}
{
position
:
absolute
;
width
:
220px
;
border
:
1px solid #666666
;
}
#findPanelTitle
{...}
{
height
:
10px
;
background-color
:
#336699
;
cursor
:
move
;
}
#findPanelContent
{...}
{
padding
:
5px 5px 5px 5px
;
background-color
:
#6699CC
;
}
</
style
>
</
head
>
<
body
>
<
SCRIPT
LANGUAGE
="JavaScript"
>
...
<!--
var
xmlDoc
=
new
ActiveXObject(
"
Msxml2.DOMDocument
"
);
xmlDoc.async
=
false
;
xmlDoc.resolveExternals
=
false
;
xmlDoc.load(
"
stu.xml
"
);
//
alert(xmlDoc.xml);
//
显示数据
function
show()
...
{
var
vbo
=
document.getElementById(
"
s
"
).value;
if
(vbo
==
"
显示学生信息
"
)
...
{
document.getElementById(
'
info
'
).style.visibility
=
'
visible
'
;
document.getElementById(
"
s
"
).value
=
"
隐藏学生信息
"
;
}
else
...
{
document.getElementById(
'
info
'
).style.visibility
=
'
hidden
'
;
document.getElementById(
"
s
"
).value
=
"
显示学生信息
"
;
}
}
//
查找
function
que()
...
{
document.getElementById(
"
ad
"
).style.visibility
=
"
visible
"
;
document.getElementById(
"
qmd
"
).style.visibility
=
"
visible
"
;
}
/**/
/*
*
* 解析XML文件函数
* @param xmlDoc XML对象
* @param name 属性名称 格式如:user.name
*/
function
getXMLProperty(xmlDoc, name)
...
{
var
keys
=
name.split(
'
.
'
);
var
node
=
xmlDoc.documentElement;
for
(
var
i
=
0
; i
<
keys.length; i
++
)
...
{
var
childs
=
node.childNodes;
var
key
=
keys[i];
for
(
var
k
=
0
; k
<
childs.length; k
++
)
...
{
var
child
=
childs[k];
if
(child.nodeName
==
key)
...
{
if
(child.childNodes.length
==
1
)
...
{
return
child.text;
}
else
...
{
node
=
child;
break
;
}
}
}
}
return
""
;
}
//
返回父节点(通过节点名字和节点值)
function
getNod(nam,val)
...
{
var
node
=
xmlDoc.documentElement;
var
childs
=
node.childNodes;
for
(
var
i
=
0
;i
<
childs.length ;i
++
)
...
{
var
child
=
childs[i];
var
childms
=
child.childNodes;
for
(
var
k
=
0
;k
<
childms.length;k
++
)
...
{
var
childm
=
childms[k];
if
(childm.nodeName
==
nam
&&
(childm.text).substring(
0
,
6
)
==
val)
...
{
//
alert(val);
return
child;
}
}
}
return
''
;
}
//
通过父节点和子节点名返回子节点值
function
getNodVal(nods,nam)
...
{
var
childms
=
nods.childNodes;
for
(
var
k
=
0
;k
<
childms.length;k
++
)
...
{
var
childm
=
childms[k];
if
(childm.nodeName
==
nam)
...
{
//
alert(childm.text);
return
childm.text;
}
}
return
''
;
}
//
通过父节点和子节点名返回子节点
function
getCurNod(nods,nam)
...
{
var
childms
=
nods.childNodes;
for
(
var
k
=
0
;k
<
childms.length;k
++
)
...
{
var
childm
=
childms[k];
if
(childm.nodeName
==
nam)
...
{
//
alert(childm.text);
return
childm;
}
}
return
''
;
}
//
开始查找
function
query()
...
{
var
renum
=
/^
d
...
{
5
}
$
/
;
if
(renum.exec(xh.value))
...
{
if
(xmlDoc.selectSingleNode(
"
/学生管理[学生/学号=
"
+
xh.value
+
"
]
"
))
...
{
var
nod
=
getNod(
'
学号
'
,xh.value);
//
getNodVal(nod,'姓名');
//
getNodVal(nod,'性别');
//
getNodVal(nod,'籍贯');
/**/
/*
document.getElementById("xm").value=xmlDoc.selectSingleNode("/学生管理[学生/学号="+xh.value+"]").selectSingleNode("学生/姓名").text;
document.getElementById("xb").value=xmlDoc.selectSingleNode("/学生管理[学生/学号="+xh.value+"]").selectSingleNode("学生/性别").text;
document.getElementById("jg").value=xmlDoc.selectSingleNode("/学生管理[学生/学号="+xh.value+"]").selectSingleNode("学生/籍贯").text;
document.getElementById("xh").disabled="true";
*/
document.getElementById(
"
xm
"
).value
=
getNodVal(nod,
'
姓名
'
);
document.getElementById(
"
xb
"
).value
=
getNodVal(nod,
'
性别
'
);
document.getElementById(
"
jg
"
).value
=
getNodVal(nod,
'
籍贯
'
);
}
else
...
{
alert(
"
该学号还没有被占用!
"
);
}
}
else
...
{
alert(
"
学号非法!学号5位数字!
"
);
return
false
;
}
}
//
修改
function
mod()
...
{
if
(info_check())
...
{
if
(xmlDoc.selectSingleNode(
"
/学生管理[学生/学号=
"
+
xh.value
+
"
]
"
))
...
{
if
(confirm(
"
确认修改?
"
))
...
{
var
nod
=
getNod(
'
学号
'
,xh.value);
getCurNod(nod,
'
姓名
'
).text
=
xm.value;
getCurNod(nod,
'
性别
'
).text
=
xb.value;
getCurNod(nod,
'
籍贯
'
).text
=
jg.value;
/**/
/*
xmlDoc.selectSingleNode("/学生管理[学生/学号="+xh.value+"]").selectSingleNode("学生/姓名").text=xm.value;
xmlDoc.selectSingleNode("/学生管理[学生/学号="+xh.value+"]").selectSingleNode("学生/性别").text=xb.value;
xmlDoc.selectSingleNode("/学生管理[学生/学号="+xh.value+"]").selectSingleNode("学生/籍贯").text=jg.value;
*/
saveXML();
//
document.getElementById("xh").disabled="false";
document.getElementById(
"
xh
"
).value
=
""
;
document.getElementById(
"
xm
"
).value
=
""
;
document.getElementById(
"
xb
"
).value
=
""
;
document.getElementById(
"
jg
"
).value
=
""
;
document.getElementById(
"
ad
"
).style.visibility
=
"
hidden
"
;
document.getElementById(
"
qmd
"
).style.visibility
=
"
hidden
"
;
alert(
"
修改成功!
"
);
location.reload();
}
&nbs