首先如果要使用資料繫結技術來展現資料,必須要在網頁中建立XML的資料來源物件(Data Source Object),文中簡稱DSO,建立DSO的方式有兩種,第一種是使用Java Applet連結到一份Books.xml檔案資料,範例如下: |
< HTML > < HEAD > |
< APPLET CODE="com.ms.xml.dso.XMLDSO.class" id="xmldso" width=0 height=0 > < PARAM NAME="URL" VALUE="Books.xml" > < /APPLET > |
< /HEAD > < BODY >
< /BODY > < /HTML > |
JavaApplet.htm |
第二種方式是建立XML DataIsland(XML資料島),範例如下: |
< HTML > < HEAD > |
< xml id="xmldso" src="Books.xml" >< /xml > |
< /HEAD > < BODY >
< /BODY > < /HTML > |
XMLDataIsland1.htm |
或者直接將XML資料崁入DataIsland中,範例如下: |
< HTML > < HEAD > |
< xml id="xmldso" > < ?xml version="1.0"? > < booklist > < book > < title >The Gourmet Microwave< /title > < isbn >72-80081-082< /isbn > < publisher >New Moon Books< /publisher > < price >9.95< /price > < details >Details.asp?isbn=72-80081-082< /details > < author >Charlotte M. Cooper< /author > < author >Shelley B. Burke< /author > < author >Regina P. Murphy< /author > < /book > < /booklist > < /xml > |
< /HEAD > < BODY >
< /BODY > < /HTML > |
XMLDataIsland2.htm |
這兩種方式都能建立DSO,不過第二種方式,也就是XML DataIsland的語法只有在IE5以後的版本才有支援,在這邊預設讀者都有IE5可以測試。建立好DSO,先看一下DSO裡面的資料,也就是連結到的XML檔案Books.xml,如下列檔案內容: |
|
XML檔案中包含五本書,每本書都有一個以上的作者。接下來要如何讓HTML標籤來展現資料呢?其實很簡單,例如下面的範例,僅僅在標籤內加上兩個屬性設定(datasrc與datafld),第一筆資料就能夠繫結在標籤內了: |
< HTML > < HEAD > < xml id="xmldso" src="Books.xml" > < /xml > < /HEAD > < BODY >
書號:< span
|
datasrc="#xmldso" datafld="isbn" |
>< /span >< br > |
書名:< TEXTAREA rows=2 cols=20 id=textarea1 name=textarea1
|
datasrc="#xmldso" datafld="title" |
>< /TEXTAREA >< br > |
出版商:< INPUT type="button" value="Button" id=button1 name=button1
|
datasrc="#xmldso" datafld="publisher" |
>< br > |
價格:< INPUT type="text" id=text1 name=text1 |
datasrc="#xmldso" datafld="price" |
> |
< /BODY > < /HTML > |
DataIsland3.htm |
結果圖如下: |
|
原來datasrc屬性就是指定DSO,而datafld就是指定欄位,並且個別用不同的標籤來展現,讀者就會發現資料繫結的彈性以及方便了。例如價格欄位資料會繫結到TextBox的Value屬性,所以結果可以看到資料便展現在TextBox裡面。 |
但是有一點必須要注意,並不是所有的HTML標籤都支援這兩個屬性,在以下的表格中列出支援的HTML標籤以及資料繫結後所對應的標籤屬性: |
HTML標籤 |
資料繫結標籤屬性 |
A |
href |
APPLET |
property value via PARAM |
BUTTON |
innerText, innerHTML |
DIV |
innerText, innerHTML |
FRAME |
src |
IFRAME |
src |
IMG |
src |
INPUT TYPE=BUTTON |
innerText, innerHTML |
INPUT TYPE=CHECKBOX |
checked |
INPUT TYPE=HIDDEN |
value |
INPUT TYPE=PASSWORD |
value |
INPUT TYPE=RADIO |
checked |
INPUT TYPE=TEXT |
value |
LABEL |
innerText, innerHTML |
LEGEND |
innerText, innerHTML |
MARQUEE |
innerText, innerHTML |
SELECT |
obj.options(obj.selectedIndex).text |
SPAN |
innerText, innerHTML |
TEXTAREA |
value |
|
如上表span標籤在設定完datasrc及dtafld之後,資料會存放在標籤的innerText或innerHTML屬性中,這代表資料能夠以TEXT純文字展現或以HTML展現。資料繫結之後預設使以純文字展現,也就是存放在innerText屬性,例如改寫Books.xml的第一筆資料的isbn欄位如下: |
< book > < title >The Gourmet Microwave< /title >
|
< isbn > |
<
|
B |
<
|
72-80081-082 |
<
|
/B |
<
|
;< /isbn > |
< publisher >New Moon Books< /publisher > < price >9.95< /price > < details >Details.asp?isbn=72-80081-082< /details > < author >Charlotte M. Cooper< /author > < author >Shelley B. Burke< /author > < author >Regina P. Murphy< /author > < /book > |
|
其中「<」代表「< 」符號,「&glt;」代表「 >」符號,主要是因為XML資料中大於和小於符號是保留字,所以必須以其他方式表現,此時再度執行DataIsland3.htm會得到以下結果: |
|
但是這不是想要的結果,主要的目的是希望書號欄位資料以粗體展現,此時必須配合另一個HTML屬性,也就是修改DataIsland3.htm的span標籤,再加上一個屬性dataformatas設定為HTML。此時資料繫結後,資料便會存放在span標籤的innerHTML屬性,也就是以HTML方式展現,如下程式碼及結果: |
書號:< span datasrc="#xmldso" datafld="isbn" |
dataformatas="HTML" |
>< /span >< br > |
|
|
|
相关推荐
赠送jar包:jakarta.xml.bind-api-2.3.3.jar; 赠送原API文档:jakarta.xml.bind-api-2.3.3-javadoc.jar; 赠送源代码:jakarta.xml.bind-api-2.3.3-sources.jar; 赠送Maven依赖信息文件:jakarta.xml.bind-api-...
XML(eXtensible Markup Language)是用于存储和传输数据的一种标记语言,广泛应用于Web服务、配置文件和数据交换等领域。...在处理XML问题时,熟悉这些基本概念和API可以帮助快速定位和解决问题,提高开发效率。
Spring系列第4篇:xml中bean定义详解(-)Spring系列第5篇:创建bean实例这些方式你们都知道?Spring系列第6篇:玩转bean scope,避免跳坑里!Spring系列第7篇:依赖注入之手动注入Spring系列第8篇:自动注入...
- **line 1, column 0**: 错误发生在文件的第一行、第一列的位置,这通常意味着整个文件从一开始就没有合法的XML元素。 ### 解决方法 #### 1. 检查文件内容 首先需要确保`.launch`文件不是空文件。可以通过任何...
Perl中的XML::Simple模块是Perl社区广泛使用的XML解析器,尤其适合处理小型或结构简单的XML文档。这个模块的名称虽然包含“Simple”,但它实际上提供了一种简洁的接口,用于将XML数据转换为Perl数据结构,反之亦然。...
关于djangorestframework-xml 主页: : 软件包许可证:BSD-3-Clause 原料许可证:BSD 3-条款摘要:对Django REST Framework的XML支持当前构建状态所有平台:当前发行信息姓名资料下载版本平台类安装...
**Pugixml-1.0:高效且易用的XML解析库** Pugixml是一个轻量级、高性能的C++库,专门用于XML文档的解析和操作。它的设计目标是提供简单、高效的API,使得开发人员可以方便地处理XML数据。在“pugixml-1.0”这个版本...
【标题】:“实战WebService I: XML-RPC篇(基于php)” 在Web服务的世界中,XML-RPC(XML Remote Procedure Call)是一种简单的协议,它允许客户端通过HTTP发送一个XML编码的函数调用到服务器,然后服务器执行这个...
ASP.NET XML高级编程是针对C#开发者深入理解XML技术及其在Web应用开发中的实践的一门重要课程。XML(Extensible Markup Language)是一种用于标记数据的语言,广泛应用于数据交换、配置文件、以及Web服务等场景。在...
### 如何使用EX-Converter将Excel格式的测试用例转换为XML格式以导入Testlink 在软件测试领域,Testlink 是一个广泛使用的开源测试管理工具,它帮助团队组织、管理和跟踪测试过程。为了提高效率,有时我们需要将...
TinyXML2是一个小型、快速且易于使用的C++库,专门用于解析和操作XML文档。它由李·格雷戈里(Lee Gregory)开发,旨在提供一个轻量级的解决方案,适用于那些需要处理XML数据但不希望引入大型XML解析器如Xerces或...
#### 4. 主对象树 **4.1 转换主对象树** - **新建转换**:创建一个新的转换。 - **转换设置**:配置转换的基本信息,如名称、注释等。 - **DB连接**:管理数据库连接信息。 - **Steps(步骤)**:添加并配置转换步骤...
第一类:Intellij idea 使用: Settings->Editor->Code Style->XML 第二类:Eclipse使用: 1.在菜单栏中选中『windows』-〉 『Preferences』。 2.在出现的对话框的左边树中展开『Java』下的『code style』。 3.其中...
### XML Schema结构快速参考知识点详解 #### 一、引言 XML(Extensible Markup Language)是一种标记语言,用于描述数据的结构和存储形式。XML Schema是定义XML文档结构的一种方式,它提供了一种机制来精确地描述...
- **第4章:使用逻辑** - 讲解如何在XSLT中实现条件判断和循环,包括`<xsl:if>`、`<xsl:choose>`、`<xsl:when>`和`<xsl:otherwise>`等元素。 - 展示如何根据条件的不同生成不同的输出。 - **第5章:排序和分组** ...
标题中的“用xml.xsl 写的课程表”指的是使用XML(可扩展标记语言)和XSL(可扩展样式表语言)技术创建的课程表应用。XML是一种用于标记数据的语言,它允许数据以结构化的方式表示,而XSL则是一种转换XML文档的样式...
- `<property name="name" type="string">`:映射`name`属性到数据库表的`name`列。 6. **`hibernate.cfg.xml`**:配置文件示例。 - 指定数据库连接参数。 - 定义使用的方言。 - 配置扫描的映射文件。 #### 四...
4. 第四部分(Part 4):信息交换,关于文件转换和互操作性的指南。 5. 第五部分(Part 5):过渡,关于从旧版二进制格式向Open XML过渡的指导。 **五、C071691e.pdf内容** C071691e.pdf文件很可能是ISO/IEC 29500...
在使用maven命令创建maven项目时候执行到Generating Project in Batch mode 卡住,是因为要下载archetype-catalog.xml(4M)文件,可以单独下载后使用-DarchetypeCatalog=local引用本地下载的文件,需要将archetype-...
TinyXML2是一个小型、快速且高效的C++库,专门用于解析和操作XML文档。这个库的设计目标是提供一个轻量级、易于使用且错误容忍度较高的解决方案,使得开发者能够快速地将XML支持集成到他们的项目中。在本文中,我们...