当前位置: 首页 > 图文教程 > 网络编程 > Javascript > xml 与javascript结合的问题解决方法

Javascript
js select 标签选定项的值获取代码
js GridView 实现自动计算操作代码
Discuz 公告效果(自动换行,无间隙滚动)
js 动态添加标签(新增一行,其实很简单,就是几个函数的应用)
JS 常用校验函数
HTML代码中标签的全部属性 中文注释说明
input 高级限制级用法
js onpropertychange输入框 事件获取属性
Javascript 生成无限下拉列表实现代码
javascript 极速 隐藏/显示万行表格列只需 60毫秒
用JavaScript实现单继承和多继承的简单方法
javascript 闭包函数做显隐内容
js 页面模块自由拖动实例
js Flash插入函数免激活代码
setTimeout 不断吐食CPU的问题分析
说说掌握JavaScript语言的思想前提想学习js的朋友可以看看
js 浏览器版本及版本号判断函数2009年
Javascript 原型和继承(Prototypes and Inheritance)
HTML 自动伸缩的表格Table js实现
两个INPUT同步输入的方法小结 兼容IE和firefox

Javascript 中的 xml 与javascript结合的问题解决方法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 316 ::
收藏到网摘: n/a

我想把html里面的title 动态绑定到一个xml
没成功 help me ,pls
如下
<html>
<XML ID="xmldso">
<?xml version="1.0"?>
<booklist>
<book>
<title>Straight Talk About Computersyyyyyyyyyy</title>
<isbn>72-80088-005</isbn>
</book>
<book>
<title>Straight Talk About Computersyyyyyyyyyy</title>
<isbn>72-80088-005</isbn>
</book>
</booklist>
</XML>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body>
<LABEL ID=title DATASRC=#xmldso DATAFLD="title"></LABEL>
<LABEL ID=title1 value="dff"></LABEL>
<SCRIPT LANGUAGE="JavaScript" for="xmldso">
<!--
//var df=xmldso.booklist.book("title");
//alert(df);
//alert(title1.value);
document.title="dd";
--here ,I want to document.title=df;
//-->
</SCRIPT>
<TABLE BORDER=1 DATASRC="#xmldso">
<THEAD>
<TR><TH>Title</TH> <TH>ISBN</TH></TR>
</THEAD>
<TBODY>
<TR><TD><DIV DATAFLD="title"></DIV></TD>
<TD><DIV DATAFLD="isbn"> </DIV></TD>
</TR>
</TBODY>
</TABLE>
<HR>
<XML ID="xmldso1" SRC="myXML.xml"> </XML>
<TABLE BORDER=1 DATASRC="#xmldso1">
<THEAD>
<TR><TH>书名</TH> <TH>出版号</TH></TR>
</THEAD>
<TBODY>
<TR><TD><DIV DATAFLD="title"></DIV></TD>
<TD><DIV DATAFLD="isbn"> </DIV></TD>
</TR>
</TBODY>
</TABLE>
</body>
</html>
myXML.xml 如下,其实这个没用,只不过为了完整性。
复制代码 代码如下:

<?xml version="1.0" encoding="GBK"?>
<booklist>
<book>
<title>计算机技术</title>
<isbn>72-80088-005</isbn>
</book>
<book>
<title>电工技术</title>
<isbn>72-80081-082</isbn>
</book>
<book>
<title>计算机软件技术</title>
<isbn>72-80088-005</isbn>
</book>
<book>
<title>计算机修理技术</title>
<isbn>72-80081-082</isbn>
</book>
</booklist>

xmldso 是一个 XML DOM 对象,访问的时候要使用 DOM API。这样写:
复制代码 代码如下:

var books = xmldso.selectSingleNode("booklist").selectNodes("book");
for(var i=0; i<books.length; i++) {
alert(books[i].selectSingleNode("title").text);
}
关于xmldso,我也想说几句,曾经做过一个项目,前期是台湾几个牛人做的,采用MVC,下面是我对项目的总结:
XXX Framework:
XXX是使用的MVC模式,数据、控制和视图相互分离,JSP负责视图,Servlet负责控制,DataModule负责数据的存取
Model部分:
优点:可以用event listener的方式写business logic,可视化管理,特别支持master-detail(主子表结构),look-up(查找,使之功能相当于数据库当中的视图),format(格式化)等.
缺点:公司员工必须对DataModule熟悉,DataModule不是主流技术,会使用的人并不多——尤其是Java程序员。
IDE为Datamodule产生了大量的代码,但同时也减少了大量的sql语句.系统在运行过程中往往需要同时对多个表格进行操作,为了保证数据的完整性及复杂操作的可靠执行,DataModule自动进行了事务处理,减少了程序员的开发任务.
Control部分:
优点:
通过pd.xml定义系统对外行为,比如增加,修改,删除,查询,包括设定权限(目前没有做,但设计已经有体现)等.
将使用者的操作转变为datamodule操作。
选择适当的view进行显示.
View部分:
优点:
1):前端功能(onclick,onfocus,onblue,onchange),使用xslt,为jsp减少了大量的代码.
2):显示使用XML-DSO,IE自动进行data binding.
缺点:
1):必需使用IE6.用其它的系统会运行会不正常.
2):由于使用XML-DSO,所以对程序员要求很高.
3):由于有很多检测,计算,都在客户端进行,造成了所谓的“胖客户端”,结果就是:功能集中,不利于更新和维护.
流程
1):客户端发送request请求到服务器端.
2):服务器端通过control Servlet接收请求,通过解析request,分配给合适的Business Object
3)controller将一些必要的请求信息,传给DataModule
4):Business Object更新(增加,修改,删除等)Model,Model同步DataBase
5):controller执行Jsp页面,执行结果暂存起来.
6):Model信息被打包成xml 资料
1):客户端发送request请求到服务器端.
2):服务器端通过control Servlet接收请求,通过解析request,分配给合适的Business Object
3)controller将一些必要的请求信息,传给DataModule
4):Business Object更新(增加,修改,删除等)Model,Model同步DataBase
5):controller执行Jsp页面,执行结果暂存起来.
6):Model信息被打包成xml 资料
7):将xml资料与Jsp页面的执行结果相结合,一起响应客户端.