xml 与javascript结合的问题解决方法_javascript技巧

我想把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页面的执行结果相结合,一起响应客户端.

时间: 2024-07-28 22:05:36

xml 与javascript结合的问题解决方法_javascript技巧的相关文章

JavaScript汉诺塔问题解决方法_javascript技巧

本文实例讲述了JavaScript汉诺塔问题解决方法.分享给大家供大家参考.具体实现方法如下: <script language="javascript"> var han=function (disc,src,aux,dst){ if(disc>0){ han(disc-1,src,dst,aux); document.writeln("move disc "+disc+" from "+src+" to "

JS使用ajax从xml文件动态获取数据显示的方法_javascript技巧

本文实例讲述了JS使用ajax从xml文件动态获取数据显示的方法.分享给大家供大家参考.具体分析如下: 下面的JS代码通过ajax检索xml文件的内容动态展示到网页,真个页面无刷新 <!DOCTYPE html> <html> <head> <script> function loadXMLDoc(url) { var xmlhttp; var txt,x,xx,i; if (window.XMLHttpRequest) {// code for IE7+,

浅谈html转义及防止javascript注入攻击的方法_javascript技巧

有的时候页面中会有一个输入框,用户输入内容后会显示在页面中,类似于网页聊天应用.如果用户输入了一段js脚本,比例:<script>alert('test');</script>,页面会弹出一个对话框,或者输入的脚本中有改变页面js变量的代码则会时程序异常或者达到跳过某种验证的目的.那如何防止这种恶意的js脚本攻击呢?通过html转义能解决这个问题. 一:什么是html转义? html转义是将特殊字符或html标签转换为与之对应的字符.如:< 会转义为 <> 或转义

常见的javascript跨域通信方法_javascript技巧

本文主要介绍几种常见的javascript跨域通信方法.首先讲解一下JSONP.1.JSONP JSONP(JSON with Padding)是JSON的一种"使用模式",可用于解决主流浏览器的跨域数据访问的问题.由于同源策略,一般来说位于 server1.example.com 的网页无法与不是 server1.example.com的服务器沟通,而 HTML 的<script> 元素是一个例外.利用 <script> 元素的这个开放策略,网页可以得到从其他

javascript 伪数组实现方法_javascript技巧

这篇文章来回答javascript通用循环遍历方法forEach中最后提到的关于伪数组的问题. 什么是伪数组 能通过Array.prototype.slice转换为真正的数组的带有length属性的对象. 这种对象有很多,比较特别的是arguments对象,还有像调用getElementsByTagName,document.childNodes之类的,它们都返回NodeList对象都属于伪数组. 我们可以通过Array.prototype.slice.call(fakeArray)将伪数组转变

JavaScript截断字符串的方法_javascript技巧

本文实例讲述了JavaScript截断字符串的方法.分享给大家供大家参考.具体如下: 这里JavaScript截断字符串,类似于substr(),只不过这个函数不会截断单词,在发生截断后,会添加一个省略号 if (!function_exists('subsent')) { function subsent($string, $start = 0, $length = 0, $cap = '...') { if ($length <= 0 || strlen($string) < $lengt

JavaScript替换当前页面的方法_javascript技巧

本文实例讲述了JavaScript替换当前页面的方法.分享给大家供大家参考.具体如下: 下面的JS代码可以替换当前页面为指定的URL <!DOCTYPE html> <html> <head> <script> function replaceDoc() { window.location.replace("http://www.jb51.net") } </script> </head> <body>

JavaScript实现快速排序的方法_javascript技巧

本文实例讲述了JavaScript实现快速排序的方法.分享给大家供大家参考.具体实现方法如下: <html> <head> <script> function quickSort(input) { if (input.length <= 1) return input; var pivot = Math.floor(Math.random()*input.length) var less = [], greater=[]; var pivotElem = inpu

Javascript 更新 JavaScript 数组的 uniq 方法_javascript技巧

上次写的一篇<JavaScript 数组的 uniq 方法>,发现代码的问题还是存在.比如如果数组内有 undefined 元素就无法过滤等. 昨天看见 Lazy 兄弟重新更新了函数,现在他是这样子写的: Array.prototype.uniq = function() {     var resultArr = [],         returnArr = [],         origLen = this.length,         resultLen;     function