|
 |
|
Приложение 2
JavaScript сценарий, обрабатывающий XML-документ, приведенный в приложении 1
<HTML>
<head>
<title></title>
<script language="javascript">
<!--
var xmldoc = new ActiveXObject("msxml");
var xmlsrc = "http://localhost/xml/journal.xml";
function viewTitle(elem){ // Отображение заголовка документа, определяемого элементом <title>
this.document.writeln('<center><table width="100%" border=0><tr><td width="100%" align="center" bgcolor="silver"><b><font color="black">'+elem.text+'</font></b></td></tr></table></center><br>');
}
function viewContactsList(elem){ // Отображение содержимого дочерних элементов <author-list>
this.document.writeln('<tr><td align="right" colspan="2" bgcolor="gray"><b><font color="white">Наши реквизиты</font></b></td></tr>');
this.document.writeln('<tr><td bgcolor="silver" colspan="2"><center><table width="80%" border=0>');
if(elem.type==0){
if(elem.children!=null){
this.document.writeln('<tr><td colspan=2 width="100%"> </td></tr>');
var cur_item=elem.children.item("address");
if(cur_item!=null){
this.document.writeln('<tr><td><font color="blue">Адрес</font></td><td align="right" ><b><font color="red">'+cur_item.text+'</font></b></td></tr>');
}
var cur_item=elem.children.item("tel",0);
if(cur_item!=null){
this.document.writeln('<tr><td><font color="blue">Телефон</font></td><td align="right" ><b><font color="red">'+cur_item.text+'</font></b></td></tr>');
}
var cur_item=elem.children.item("email");
if(cur_item!=null){
this.document.writeln('<tr><td><font color="blue">E-Mail</font></td><td align="right"><b><font color="red">'+cur_item.text+'</font></b></td></tr>');
}
var cur_item=elem.children.item("url");
if(cur_item!=null){
this.document.writeln('<tr><td><font color="blue">URL</font></td><td align="right"><b><font color="red">'+cur_item.text+'</font></b></td></tr>');
}
}
}
this.document.writeln('<tr><td colspan=2 width="100%"> </td></tr>');
this.document.writeln('</table></center></td></tr>');
}
function viewAuthorsList(elem){ // Отображение содержимого дочерних элементов <author-list>
this.document.writeln('<tr><td align="right" colspan="2" bgcolor="gray"><b><font color="white">Наши авторы</font></b></td></tr>');
this.document.writeln('<tr><td bgcolor="silver" colspan="2"><center><table width="80%" border=0>');
if(elem.type==0){
if(elem.children!=null){
for(i=0;i<elem.children.length;i++){
var cur_author = elem.children.item("author",i);
this.document.writeln('<tr><td colspan=2 width="100%"> </td></tr>');
if(cur_author.children!=null){
var cur_item=cur_author.children.item("firstname");
if(cur_item!=null){
this.document.writeln('<tr><td><font color="blue">Имя</font></td><td align="right" ><b><font color="red">'+cur_item.text+'</font></b></td></tr>');
}
var cur_item=cur_author.children.item("lastname");
if(cur_item!=null){
this.document.writeln('<tr><td><font color="blue">Фамилия</font></td><td align="right" ><b><font color="red">'+cur_item.text+'</font></b></td></tr>');
}
var cur_item=cur_author.children.item("email");
if(cur_item!=null){
this.document.writeln('<tr><td><font color="blue">E-Mail</font></td><td align="right"><b><font color="red">'+cur_item.text+'</font></b></td></tr>');
}
}
}
}
}
this.document.writeln('</table></center></td></tr>');
}
function viewError(){
this.document.writeln('<center><hr>Error was detected');
}
function parse(root){
if(root==null) return;
var i=0;
var elem;
if(root.children!=null){ // Если вложенные элементы не были определены, то свойство children будет установленно в null
this.document.writeln('<center><table width="80%" border=0><tr><td>');
// Перебор дочерних элементов
for(i=0;i<root.children.length;i++){
elem=root.children.item(i);
if(root.children.item(i).tagName=="TITLE"){
viewTitle(elem); // Разбор подэлементов <title>
}
if(elem.tagName=="CONTACTS"){
viewContactsList(elem); // Разбор подэлементов <contacts>
}
if(elem.tagName=="AUTHORS-LIST"){
viewAuthorsList(elem); // Разбор подэлементов <authors-list>
}
}
this.document.writeln('</td></tr></table>');
}
}
function viewDocument(){
xmldoc.URL = xmlsrc; // Загрузка XML документа
this.document.writeln('<body bgcolor="white">');
parse(xmldoc.root); // Начало разбора документа
this.document.writeln('</body>');
}
// Генерирование страницы
viewDocument();
//-->
</script>
</head>
Назад | Содержание | Вперед
|
 |
 |
|
|
 |
 |
 |
Новости мира IT:
- 19.06 - В России появятся складные смартфоны на отечественной платформе «Ред ОС М»
- 19.06 - В переговорах OpenAI и Microsoft сохраняется несколько важных противоречий
- 19.06 - OpenAI вскрыла тёмные личности в ИИ, отвечающие за ложь, сарказм и токсичные ответы
- 19.06 - Поставщиком гибких дисплеев для складного iPhone будет компания Samsung
- 19.06 - Apple намеревается использовать ИИ для разработки своих чипов
- 18.06 - «Сбер» выпустит отечественный рассуждающий ИИ
- 18.06 - Google выпустила финальную версию мощной ИИ-модели Gemini 2.5 Pro, а также экономную Gemini 2.5 Flash-Lite
- 18.06 - ИИ-стартап xAI Илона Маска собрался привлечь ещё $4,3 млрд в дополнение к $5 млрд долговых обязательств
- 18.06 - Роскомнадзор пойдёт по трафику: операторов обяжут раскрыть маршруты и устройства в сетях
- 11.06 - Опубликована 65 редакция рейтинга самых высокопроизводительных суперкомпьютеров
- 11.06 - ВТБ начал тестировать отечественную альтернативу Apple Pay — сервис «Волна» от НСПК
- 11.06 - Google выпустила стабильную версию Android 16, но масштабный редизайн ещё не готов
- 11.06 - Руководство Apple признало, что первая попытка создать ИИ-версию Siri провалилась
- 11.06 - Госдума РФ приняла законопроект о создании российского национального мессенджера
- 11.06 - OpenAI выпустила мощную модель o3-pro, но она медленнее, чем o1-pro
- 11.06 - IBM построит первый в мире модульный квантовый компьютер с 200 логическими кубитами и встроенной коррекцией ошибок
- 11.06 - Nintendo установила рекорд, продав более 3,5 млн консолей Switch 2 всего за четыре дня
- 09.06 - Презентация национального российского мессенджера состоится уже летом
- 09.06 - Apple представила iPadOS 26 со стеклянным дизайном, окнами и другими улучшениями
- 09.06 - Российские 4G и 5G заработают на зеленоградских чипах
Архив новостей
|
 |
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
|
 |
 |
|
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее... |
|