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 相关文章推荐
js中判断数字\字母\中文的正则表达式 (实例)
Jun 29 Javascript
复制网页内容,粘贴之后自动加上网址的实现方法(脚本之家特别整理)
Oct 16 Javascript
JavaScript编程中容易出BUG的几点小知识
Jan 31 Javascript
javaScript中Math()函数注意事项
Jun 18 Javascript
JS实现自动固定顶部的悬浮菜单栏效果
Sep 16 Javascript
详解JavaScript异步编程中jQuery的promise对象的作用
May 03 Javascript
jQuery事件绑定方法学习总结(推荐)
Nov 21 Javascript
vue-hook-form使用详解
Apr 07 Javascript
分享vue里swiper的一些坑
Aug 30 Javascript
JavaScript从原型到原型链深入理解
Jun 03 Javascript
Node.js API详解之 timer模块用法实例分析
May 07 Javascript
vue中h5端打开app(判断是安卓还是苹果)
Feb 26 Vue.js
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
关于PHP5 Session生命周期介绍
2010/03/02 PHP
PHP把数字转成人民币大写的函数分享
2014/06/30 PHP
PHP children()函数讲解
2019/02/03 PHP
PHP7 echo和print语句实例用法
2019/02/15 PHP
Js+XML 操作
2006/09/20 Javascript
Cookie 注入是怎样产生的
2009/04/08 Javascript
myeclipse安装jQuery插件的方法
2011/03/29 Javascript
JavaScript中的property和attribute介绍
2011/12/26 Javascript
js对字符的验证方法汇总
2015/02/04 Javascript
再谈JavaScript线程
2015/07/10 Javascript
javascript实现类似百度分享功能的方法
2015/07/27 Javascript
js实现iPhone界面风格的单选框和复选框按钮实例
2015/08/18 Javascript
玩转JavaScript OOP - 类的实现详解
2016/06/08 Javascript
微信小程序 网络API发起请求详解
2016/11/09 Javascript
Bootstrap Scrollspy源码学习
2017/03/02 Javascript
bootstrap常用组件之头部导航实现代码
2017/04/20 Javascript
ES6深入理解之“let”能替代”var“吗?
2017/06/28 Javascript
基于Bootstrap框架菜鸟入门教程(推荐)
2017/09/17 Javascript
node.js学习之断言assert的使用示例
2017/09/28 Javascript
JavaScript基于遍历操作实现对象深拷贝功能示例
2019/03/05 Javascript
Python脚本实现网卡流量监控
2015/02/14 Python
Python完成毫秒级抢淘宝大单功能
2019/06/06 Python
Django中提供的6种缓存方式详解
2019/08/05 Python
Pycharm+django2.2+python3.6+MySQL实现简单的考试报名系统
2019/09/05 Python
python自动化测试无法启动谷歌浏览器问题
2019/10/10 Python
python利用platform模块获取系统信息
2020/10/09 Python
Debenhams百货英国官方网站:Debenhams UK
2016/07/12 全球购物
软件工程师岗位职责
2013/11/16 职场文书
双方协议书
2014/04/22 职场文书
和谐家庭演讲稿
2014/05/24 职场文书
副校长个人对照检查材料思想汇报
2014/10/04 职场文书
期末考试复习计划
2015/01/19 职场文书
医院保洁员岗位职责
2015/02/13 职场文书
卡特教练观后感
2015/06/08 职场文书
java后台调用接口及处理跨域问题的解决
2022/03/24 Java/Android
python模板入门教程之flask Jinja
2022/04/11 Python