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

Javascript
将HTML自动转为JS代码
一端时间轮换的广告
制作特殊字的脚本
美化下拉列表
文字幻灯片
判断是否输入完毕再激活提交按钮
JS控制表格隔行变色
左右两侧的广告代码 简单
父窗口获取弹出子窗口文本框的值
网页的标准,IMG不支持onload标签怎么办
一个很简单的办法实现TD的加亮效果.
文本框栏目介绍
自动检查并替换文本框内的字符
会自动逐行上升的文本框
列表内容的选择
对textarea框的代码调试,而且功能上使用非常方便,酷
提高代码性能技巧谈—以创建千行表格为例
Javascript的IE和Firefox兼容性汇编
让插入到 innerHTML 中的 script 跑起来
DEFER怎么用?

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 126 ::
收藏到网摘: 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页面的执行结果相结合,一起响应客户端.