Использование связывания данных по одной записи
Связывание данных по одной записи используется для HTML-элементов, которые не являются таблицами и не включены в связанную таблицу. HTML-элемент – например, SPAN, BUTTON или LABEL – связывается с отдельным полем XML. После этого HTML-элемент автоматически отображает содержимое поля XML, с которым он связан (сцеплен). Например, следующий HTML-элемент SPAN сцеплен с полем TITLE XML-документа, доступ к которому осуществляется через фрагмент данных dsoBook:
<SPAN DATASRC="#dsoBook" DATAFLD="TITLE"></SPAN>
Поскольку HTML-элемент не имеет множественных частей, подобно таблице, он способен отобразить значение поля только для одной записи за раз. Чтобы использовать связывание данных по одной записи, XML-документ должен быть организован как простой набор записей. (См. раздел "Использование одной HTML-таблицы для отображения простого набора записей" в начале этой лекции.)
Наипростейшим случаем связывания данных по одной записи является случай, когда XML-документ состоит только из одной записи, подобно документу из Листинга 8.7.
Листинг 8.7. Book.xml (html, txt)
В Листинге 8.8 представлена HTML-страница, которая связывает отдельный элемент SPAN с каждым из полей рассматриваемого документа (TITLE, AUTHOR, BINDING, PAGES, PRICE).
<!-- Имя файла: Book.htm -->
<HTML>
<HEAD> <TITLE>Book Description</TITLE> </HEAD>
<BODY>
<XML ID="dsoBook" SRC="Book.xml"></XML>
<H2>Book Description</H2>
<SPAN STYLE="font-style:italic">Title: </SPAN> <SPAN STYLE="font-weight:bold" DATASRC="#dsoBook" DATAFLD="TITLE"></SPAN> <BR> <SPAN STYLE="font-style:italic">Author: </SPAN> <SPAN DATASRC="#dsoBook" DATAFLD="AUTHOR"></SPAN> <BR> <SPAN STYLE="font-style:italic">Binding type: </SPAN> <SPAN DATASRC="#dsoBook" DATAFLD="BINDING"></SPAN> <BR> <SPAN STYLE="font-style:italic">Number of pages: </SPAN> <SPAN DATASRC="#dsoBook" DATAFLD="PAGES"></SPAN> <BR> <SPAN STYLE="font-style:italic">Price: </SPAN> <SPAN DATASRC="#dsoBook" DATAFLD="PRICE"></SPAN>
</BODY> </HTML>
Листинг 8.8. Book.htm (html, txt)
На рисунке 8.4 показано как Internet Explorer 5 отобразит эту страницу.
Рис. 8.4.