Основы XML




Использование сценариев для DSO - часть 2


dsoInventory.recordset.moveNext(); }

if (ResultHTML == "") ResultDiv.innerHTML = "&ltno books found&gt"; else ResultDiv.innerHTML = ResultHTML; } </SCRIPT>

</BODY>

</HTML>

Листинг 8.15. Inventory Find.htm

HTML-страница отображает элемент INPUT типа TEXT, который разрешает пользователю ввести одну строку искомого текста:

<INPUT TYPE="TEXT" ID="SearchText">

Страница также отображает элемент BUTTON (кнопка) с надписью "Search":

<BUTTON ONCLICK='FindBooks()'>Search</BUTTON>

Когда пользователь щелкает мышью на кнопке, вызывается функция сценария FindBooks, которая извлекает искомый текст из элемента INPUT и просматривает названия из всех записей BOOK в XML-документе в поисках текста, после чего отображает найденные записи BOOK, содержащие этот текст, как показано на рисунке 8.9.


Рис. 8.9. 

Функция FindBooks сценария содержится в элементе SCRIPT и написана на языке JSCRIPT:

<SCRIPT LANGUAGE="JavaScript"> function FindBooks () { SearchString = SearchText.value.toUpperCase(); if (SearchString == "") { ResultDiv.innerHTML = "&ltYou must enter text into " + "'Title text' box.&gt"; return; } dsoInventory.recordset.moveFirst(); ResultHTML = ""; while (!dsoInventory.recordset.EOF) { TitleString = dsoInventory.recordset("TITLE").value; if (TitleString.toUpperCase().indexOf(SearchString) >=0) ResultHTML += "<I>" + dsoInventory.recordset("TITLE") + "</I>, " + "<B>" + dsoInventory.recordset("AUTHOR") + "</B>, + dsoInventory.recordset("BINDING") + ", " + dsoInventory.recordset("PAGES") + " pages, " + dsoInventory.recordset("PRICE") + "<P>"; dsoInventory.recordsetmoveNext(); } if (ResultHTML == "") ResultDiv.innerHTML = "&ltno books found&gt"; else ResultDiv.innerHTML = ResultHTML; } </SCRIPT>




Содержание  Назад  Вперед