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