javascript 读取xml,写入xml 实现代码


Posted in Javascript onJuly 10, 2009

javascript 读取xml,写入xml 实现代码

添加数据 : javascript 读取xml,写入xml 实现代码

数据显示: javascript 读取xml,写入xml 实现代码

ClassModel.js源码 ::

ClassModel = 
{ 
    create : function() 
     { 
        return function() 
        { 
            this.construct.apply(this, arguments); 
        } 
     } 
} 
Extend = function(desc, src) 
    { 
        for(var c in src) 
        { 
            desc[c] = src[c]; 
        } 
        return desc; 
    } 
Object.prototype.extend = function(src) 
    { 
        return Extend.apply(this, [this, src]); 
    }

addData.js源码::
var insert = ClassModel.create(); 
var doc = new ActiveXObject("Msxml2.DOMDocument.3.0"); 
doc.load("books.xml"); 
var books; 
insert.prototype = 
{ 
construct : function(config) 
{ 
this.id = config.id; 
this.name = config.name; 
this.author = config.author; 
this.price = config.price; 
this.publisher = config.publisher; 
this.count = config.count; 
this.insertData(); 
}, 
insertData : function() 
{ var book = doc.createElement("book"); 
book.setAttribute("id", this.id); 
var name = doc.createElement("name"); 
var nameValue = doc.createTextNode(this.name); 
name.appendChild(nameValue); 
book.appendChild(name); 
var author = doc.createElement("author"); 
var authorValue = doc.createTextNode(this.author); 
author.appendChild(authorValue); 
book.appendChild(author); 
var price = doc.createElement("price"); 
var priceValue = doc.createTextNode(this.price); 
price.appendChild(priceValue); 
book.appendChild(price); 
var count = doc.createElement("count"); 
var countValue = doc.createTextNode(this.count); 
count.appendChild(countValue); 
book.appendChild(count); 
var publisher = doc.createElement("publisher"); 
var publisherValue = doc.createTextNode(this.publisher); 
publisher.appendChild(publisherValue); 
book.appendChild(publisher); 

if(doc.documentElement == null) 
{ 
books = doc.createElement("books"); 
books.appendChild(book); 
doc.appendChild(books); 
} 
else 
{ 
books = doc.documentElement; 
books.appendChild(book); 
} 
doc.save("books.xml"); 
} 
}

window.js源码::
var windows = ClassModel.create(); 
windows.prototype = 
{ 
construct : function(jsonObject) 
{ 
this.title = jsonObject.title; 
this.width = jsonObject.width; 
this.height = jsonObject.height; 
this.titleColor = jsonObject.titleColor; 
this.backgroundColor = jsonObject.backgroundColor; 
this.LwHeight = (document.body.clientHeight - this.width) / 2; //让div在屏幕的中间 
this.LwWidth = (document.body.clientWidth - this.height) / 2; //让div在屏幕的中间 
this.content = jsonObject.content; 
var loginWindow = this.createLoginBody(); 
var title = this.createLoginTitle(); 
loginWindow.appendChild(title); 
var cont = this.createContent(); 
loginWindow.appendChild(cont); 
document.body.appendChild(loginWindow); 
}, 
createLoginBody: function() //创建登陆框, 即整个框 
{ 
var loginWindow = document.createElement("div"); 
loginWindow.id = "dialog"; 
with(loginWindow.style) 
{ 
border = "1px solid white"; 
position = "absolute"; 
width = this.width + "px"; 
height = this.height + "px"; 
top = this.LwHeight + "px"; 
left = this.LwWidth + "px"; 
backgroundColor = this.backgroundColor; 
} 
return loginWindow; 
}, 
createLoginTitle:function() //创建 标题 即效果图的黑色标题 
{ 
var title = document.createElement("div"); 
var table = document.createElement("table"); 
var tbody = document.createElement("tbody"); 
var tr = document.createElement("tr"); 
var td_1 = document.createElement("td"); 
var td_2 = document.createElement("td"); 
var close = document.createElement("a"); 
close.onclick = function() 
{ 
document.body.removeChild(title.parentNode); 
} 
close.innerHTML = "X"; 
td_1.innerHTML = this.title; 
with(title.style) 
{ 
width = "100%"; 
height = this.height / 10 + "px"; 
backgroundColor = this.titleColor; 
} 
with(table.style) 
{ 
color = "white"; 
fontSize = "12pt"; 
width = "100%"; 
backgroundColor = this.titleColor; 
color = "red"; 
} 
td_2.style.textAlign = "right"; 
td_2.appendChild(close); 
tr.appendChild(td_1); 
tr.appendChild(td_2); 
tbody.appendChild(tr); 
table.appendChild(tbody); 
title.appendChild(table); 
return title; 
}, 
createContent : function() 
{ 
var div = document.createElement("div"); 
if(typeof(this.content) == 'string') 
{ 
div.innerHTML = this.content; 
}else 
{ 
div.appendChild(this.content); 
} 
with(div.style) 
{ 
paddingLeft = "80px"; 
paddingTop = "50px"; 
float = "left"; 
width = "100%"; 
} 
return div; 
} 
}

book_infor.js源码::
var doc = new ActiveXObject("Msxml2.DOMDocument.3.0"); 
doc.load("books.xml"); 
var query = ClassModel.create(); 
var v = 0; 
query.prototype = 
{ 
    construct : function() 
    { 
        this.bookInfor(); 
    }, 
    bookInfor : function() 
    { 
        var div = document.createElement("div"); 
        var root = doc.documentElement; 
        if(root == null) 
        { 
            div.innerHTML = "no data"; 
            document.body.appendChild(div); 
        }else 
        {          
        with(div.style) 
        { 
            marginLeft = "200px"; 
            overflow = "auto"; 
            border = "0px solid white"; 
            width = "605px"; 
        } 
        var table = document.createElement("table"); 
        table.cellSpacing = "0"; 
        with(table.style) 
        {     
            fontSize = "12pt"; 
            color = "white"; 
            border = "0px"; 
            width = "600px"; 
        } 
        var tbody = document.createElement("tbody"); 
        var trHead = document.createElement("tr"); 
        with(trHead.style) 
        { 
            height = "20px"; 
            backgroundColor = "Transparent"; 
        } 
        var tname = document.createElement("td"); 
        var tauthor = document.createElement("td"); 
        var tprice = document.createElement("td"); 
        var tCount = document.createElement("td"); 
        var tpublisher = document.createElement("td"); 
        tname.innerHTML = "名称"; 
        tauthor.innerHTML = "作者"; 
        tprice.innerHTML = "价格"; 
        tCount.innerHTML = "库存"; 
        tpublisher.innerHTML = "出版社"; 
        tname.style.borderBottom = "1px solid"; 
        tauthor.style.borderBottom = "1px solid"; 
        tprice.style.borderBottom = "1px solid"; 
        tCount.style.borderBottom = "1px solid"; 
        tpublisher.style.borderBottom = "1px solid"; 
        tname.style.width = "20%"; 
        tauthor.style.width = "20%"; 
        tprice.style.width = "20%"; 
        tCount.style.width = "20%"; 
        tpublisher.style.width = "20%"; 
        trHead.appendChild(tname); 
        trHead.appendChild(tauthor); 
        trHead.appendChild(tprice); 
        trHead.appendChild(tCount); 
        trHead.appendChild(tpublisher); 
        tbody.appendChild(trHead); 
     
        for(var c = 0; c < root.getElementsByTagName("book").length; c ++) 
        { 
            var roots = root.getElementsByTagName("book")[c]; 
            var id = roots.getAttribute("id"); 
            var name = roots.getElementsByTagName("name")[0].childNodes[0].nodeValue; 
            var author = roots.getElementsByTagName("author")[0].childNodes[0].nodeValue; 
            var price = roots.getElementsByTagName("price")[0].childNodes[0].nodeValue; 
            var count = roots.getElementsByTagName("count")[0].childNodes[0].nodeValue; 
            var publisher = roots.getElementsByTagName("publisher")[0].childNodes[0].nodeValue; 
            var tr = document.createElement("tr"); 
            with(tr.style) 
            { 
                backgroundColor = "Transparent"; 
            } 
            var tdName = document.createElement("td"); 
            var tdAuthor = document.createElement("td"); 
            var tdPrice = document.createElement("td"); 
            var tdCount = document.createElement("td"); 
            var tdPublisher = document.createElement("td"); 
             
            tdName.innerHTML = name; 
            tdAuthor.innerHTML = author; 
            tdPrice.innerHTML = price; 
            tdCount.innerHTML = count; 
            tdPublisher.innerHTML = publisher; 
     
            tdName.id = "tdName" + c; 
            tdAuthor.id = "tdAuthor" + c; 
            tdPrice.id = "tdPrice" + c; 
            tdCount.id = "tdCount" + c; 
            tdPublisher.id = "tdPublisher" + c; 
            tr.appendChild(tdName); 
            tr.appendChild(tdAuthor); 
            tr.appendChild(tdPrice); 
            tr.appendChild(tdCount); 
            tr.appendChild(tdPublisher); 
            tbody.appendChild(tr); 
            tdName.onmouseover = function(){ 
                document.body.style.cursor= "pointer"; 
                document.getElementById(this.id).style.backgroundColor = "darkred"; 
            } 
            tdName.onmouseout = function(){ 
                document.body.style.cursor= ""; 
                document.getElementById(this.id).style.backgroundColor = ""; 
            } 
            tdAuthor.onmouseover = function(){ 
                document.body.style.cursor= "pointer"; 
                document.getElementById(this.id).style.backgroundColor = "darkred"; 
            } 
            tdAuthor.onmouseout = function(){ 
                document.body.style.cursor= ""; 
                document.getElementById(this.id).style.backgroundColor = ""; 
            } 
            tdPrice.onmouseover = function(){ 
                document.body.style.cursor= "pointer"; 
                document.getElementById(this.id).style.backgroundColor = "darkred"; 
            } 
            tdPrice.onmouseout = function(){ 
                document.body.style.cursor= ""; 
                document.getElementById(this.id).style.backgroundColor = ""; 
            } 
            tdCount.onmouseover = function(){ 
                document.body.style.cursor= "pointer"; 
                document.getElementById(this.id).style.backgroundColor = "darkred"; 
            } 
            tdCount.onmouseout = function(){ 
                document.body.style.cursor= ""; 
                document.getElementById(this.id).style.backgroundColor = ""; 
            } 
            tdPublisher.onmouseover = function(){ 
                document.body.style.cursor= "pointer"; 
                document.getElementById(this.id).style.backgroundColor = "darkred"; 
            } 
            tdPublisher.onmouseout = function(){ 
                document.body.style.cursor= ""; 
                document.getElementById(this.id).style.backgroundColor = ""; 
            } 
        } 
        table.appendChild(tbody); 
        div.appendChild(table); 
        document.body.appendChild(div); 
         
    }     
}     
}    

Javascript 相关文章推荐
一个cssQuery对象 javascript脚本实现代码
Jul 21 Javascript
Angular4项目中添加i18n国际化插件ngx-translate的步骤详解
Jul 02 Javascript
JavaScript基于activexobject连接远程数据库SQL Server 2014的方法
Jul 12 Javascript
BootStrap selectpicker后台动态绑定数据的方法
Jul 28 Javascript
判断div滑动到底部的scroll实例代码
Nov 15 Javascript
编写React组件项目实践分析
Mar 04 Javascript
对angular4子路由&amp;辅助路由详解
Oct 09 Javascript
Webpack4 使用Babel处理ES6语法的方法示例
Mar 07 Javascript
koa-router路由参数和前端路由的结合详解
May 19 Javascript
在LayUI图片上传中,解决由跨域问题引起的请求接口错误的方法
Sep 24 Javascript
javascript实现前端成语点击验证
Jun 24 Javascript
Node.js文本文件BOM头的去除方法
Nov 22 Javascript
jquery 1.3.2 IE8中的一点点的小问题解决方法
Jul 10 #Javascript
jquery Firefox3.5中操作select的问题
Jul 10 #Javascript
jQuery 版本的文本输入框检查器Input Check
Jul 09 #Javascript
window.onload 加载完毕的问题及解决方案(下)
Jul 09 #Javascript
window.onload 加载完毕的问题及解决方案(上)
Jul 09 #Javascript
最简单的jQuery程序 入门者学习
Jul 09 #Javascript
Jquery 组合form元素为json格式,asp.net反序列化
Jul 09 #Javascript
You might like
redis 队列操作的例子(php)
2012/04/12 PHP
php去除字符串中空字符的常用方法小结
2015/03/17 PHP
用PHP代码在网页上生成图片
2015/07/01 PHP
php生成mysql的数据字典
2016/07/07 PHP
php封装的smarty类完整实例
2016/10/19 PHP
PHP使用Redis长连接的方法详解
2018/02/12 PHP
PHP实现会员账号单唯一登录的方法分析
2019/03/07 PHP
有一段有意思的代码-javascript现实多行信息
2007/08/26 Javascript
Jquery替换已存在于element上的event的方法
2010/03/09 Javascript
js监听输入框值的即时变化onpropertychange、oninput
2011/07/13 Javascript
jQuery数据缓存功能的实现思路及简单模拟
2013/05/27 Javascript
可恶的ie8提示缺少id未定义
2014/03/20 Javascript
浅谈javascript原型链与继承
2015/07/13 Javascript
jQuery使用$.ajax进行即时验证实例详解
2015/12/11 Javascript
vuejs指令详解
2017/02/07 Javascript
jQuery Json数据格式排版高亮插件json-viewer.js使用方法详解
2017/06/12 jQuery
Vue.js简易安装和快速入门(第二课)
2017/10/17 Javascript
关于Angularjs中跨域设置白名单问题
2018/04/17 Javascript
js+html实现点名系统功能
2019/11/05 Javascript
JS面向对象之单选框实现
2020/01/17 Javascript
vue 公共列表选择组件,引用Vant-UI的样式方式
2020/11/02 Javascript
[01:23]2014DOTA2国际邀请赛 球迷无处不在Ti现场世界杯受关注
2014/07/10 DOTA
布同 统计英文单词的个数的python代码
2011/03/13 Python
老生常谈Python之装饰器、迭代器和生成器
2017/07/26 Python
基于numpy中的expand_dims函数用法
2019/12/18 Python
通过Python实现Payload分离免杀过程详解
2020/07/13 Python
用HTML5制作一个简单的弹力球游戏
2015/05/12 HTML / CSS
《郑和远航》教学反思
2014/04/16 职场文书
高中生打架检讨书1000字
2015/02/17 职场文书
公司慰问信范文
2015/03/23 职场文书
2015政治思想表现评语
2015/03/25 职场文书
五年级语文教学反思
2016/03/03 职场文书
2019新员工试用期转正工作总结范文
2019/08/21 职场文书
vue特效之翻牌动画
2022/04/20 Vue.js
netty 实现tomcat的示例代码
2022/06/05 Servers
CSS 实现磨砂玻璃(毛玻璃)效果样式
2023/05/21 HTML / CSS