Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.91/82: Рейтинг темы: голосов - 82, средняя оценка - 4.91
 Аватар для geek
26 / 26 / 7
Регистрация: 21.10.2009
Сообщений: 614

Чтение XML через JavaScript

10.05.2012, 12:41. Показов 17295. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Как считать етот файл с помощю JavaScript?
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<<?xml version="1.0"?>
<root>
<Kilkist count="3">
 
<Telefon ekran="176x208" cina="250.00">
<Firma>SoniEricsin</Firma>
<Model>k500i</Model>
<Kamera>3mp</Kamera>
<CPU>200Mhz</CPU>
<OC>Android</OC>
<Kolir>Black</Kolir>
<FormFaktor>Monoblok</FormFaktor>
</Telefon>
 
<Telefon ekran="320x480" cina="200.00">
<Firma>Nokia</Firma>
<Model>m8</Model>
<Kamera>5mp</Kamera>
<CPU>500Mhz</CPU>
<OC>Symbian</OC>
<Kolir>Gray</Kolir>
<FormFaktor>Monoblok</FormFaktor>
</Telefon>
 
<Telefon ekran="320x240" cina="639.00">
<Firma>Apple</Firma>
<Model>s4</Model>
<Kamera>6mp</Kamera>
<CPU>800Mhz</CPU>
<OC>iOS</OC>
<Kolir>Black</Kolir>
<FormFaktor>Slaider</FormFaktor>
</Telefon>
</Kilkist>
</root>
1
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
10.05.2012, 12:41
Ответы с готовыми решениями:

Вставка элементов меню (содержащих javascript) через javascript
Пишу курсовой проект по JavaScript в ходе которого потребовалось создать небольшой локальный сайт, страничек довольно много и я решил, при...

Отображение XML через JavaScript
Не отображает данные из XML.Что здесь не так?)

Чтение XML через XmlDocument
Всем привет. Для чтения XML использую XmlDocument. Получается пройтись по узлам корневого тега и до их дочерних тегов, а вот как дальше...

4
 Аватар для Heleg
209 / 209 / 6
Регистрация: 23.10.2011
Сообщений: 971
10.05.2012, 12:57
что значит считать?
0
 Аватар для geek
26 / 26 / 7
Регистрация: 21.10.2009
Сообщений: 614
10.05.2012, 13:04  [ТС]
функцию в JavaScript , которая будет находить данные значения в xml
0
Студент
 Аватар для Жека-старший
498 / 344 / 162
Регистрация: 15.03.2010
Сообщений: 601
11.05.2012, 00:20
Ну думаю один из примитивных вариантов.
xmlHttp.responseXML- хранит ответ с сервера формата XML (т.е. сам XML файл).
"xml_div"- элемент DIV для вывода результата.
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
var xmlResponse = xmlHttp.responseXML;
        xmlRoot = xmlResponse.documentElement;
        telefonArray = xmlRoot.getElementsByTagName("Telefon");
        var myDiv = document.getElementById('xml_div');
        var html = "";
        for (var i=0;i<telefonArray.length;i++)
        {
            html = "";
            html = telefonArray.item(i).getAttribute('ekran')+"<br>";
            html +=telefonArray.item(i).getAttribute('cina')+"<br>";
            elm = telefonArray.item(i).getElementsByTagName("*");
            for(var j = 0;j<elm.length;j++)
                html +=elm.item(j).firstChild.data+"<br>";
            myDiv.innerHTML +="Телефон " + (i+1) + ":<br>" + html + "<hr>";
        }
Добавлено через 3 минуты
Ну или так, принцип думаю понятен.
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
var xmlResponse = xmlHttp.responseXML;
        xmlRoot = xmlResponse.documentElement;
        telefonArray = xmlRoot.getElementsByTagName("Telefon");
        Firma = xmlRoot.getElementsByTagName("Firma");
        Model = xmlRoot.getElementsByTagName("Model");
        Kamera = xmlRoot.getElementsByTagName("Kamera");
        CPU = xmlRoot.getElementsByTagName("CPU");
        OC = xmlRoot.getElementsByTagName("OC");
        Kolir = xmlRoot.getElementsByTagName("Kolir");
        FormFaktor = xmlRoot.getElementsByTagName("FormFaktor");
        var myDiv = document.getElementById('xml_div');
        var html = "";
        for (var i=0;i<telefonArray.length;i++)
        {
            html = "";
            html +="Фирма-производитель: " + Firma.item(i).firstChild.data+"<br>";
            html +="Модель: " + Model.item(i).firstChild.data+"<br>";
            html += "Размеры: " + telefonArray.item(i).getAttribute('ekran')+"<br>";
            html +="Цена: " + telefonArray.item(i).getAttribute('cina')+"<br>";
            html +="Камера: " + Kamera.item(i).firstChild.data+"<br>";
            html +="ЦПУ: " + CPU.item(i).firstChild.data+"<br>";
            html +="ОС: " + OC.item(i).firstChild.data+"<br>";
            html +="Цвет: " + Kolir.item(i).firstChild.data+"<br>";
            html +="Бла-бла: " + FormFaktor.item(i).firstChild.data+"<br>";
            myDiv.innerHTML +="Телефон " + (i+1) + ":<br>" + html + "<hr>";
        }
3
0 / 0 / 0
Регистрация: 17.10.2011
Сообщений: 9
02.02.2016, 13:52
Продолжая эту тему прошу помочь разобраться

В Mozile работает, а в других браузерах нет


HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
 
<body onload='func1()'>
 
<div id="demo"></div>
 
<script type="text/javascript">
hide
 
function func1(){
 
var xhttp;
xhttp=new XMLHttpRequest();
 
xhttp.open('GET', 'xmld/division.xml', true);
xhttp.send();
 
xhttp.onreadystatechange = function(){
document.getElementById('demo').innerHTML = xhttp.responseText;
}
 
}
 
</script>
</body>
</html>
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<division xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <par>
        <title>комментарий</title>
        <category>длина</category>
        <name number="1">см</name>
        <value>1</value>
    </par>
    <par>
        <title></title>
        <category>длина</category>
        <name number="2">мм</name>
        <value>10</value>
    </par>
    <par>
        <title></title>
        <category>время</category>
        <name number="1">мин</name>
        <value>1</value>
    </par>
    <par>
        <title></title>
        <category>время</category>
        <name number="2">сек</name>
        <value>60</value>
    </par>
</division>
Добавлено через 50 минут
в консоли Chrome
XMLHttpRequest cannot load file:///C:/Users/.../xmld/division.xml. Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https, chrome-extension-resource.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
02.02.2016, 13:52
Помогаю со студенческими работами здесь

Чтение xml файла через for
Здравствуйте, как сделать так, чтобы progressbar работал по мере добавления, знаю, как сделать через for, но не знаю, как двигать...

Возможность вызова функции через XML-RPC из HTML/JavaScript
Здравсвуйте, Вопрос: Возможен ли вызов функции через XML-RPC из HTML/JavaScript. Подробнее: Есть такой код (Его я сам собрал, но...

Чтение XML через XDocument и формирование TreeView
Здравствуйте. Хочу считать xml файл и заполнить treeView в C#. using System; using System.Collections.Generic; using...

Чтение XML файла, без использования встроенных средств работы с XML
Разработать программу на любом из перечисленных языков программирования c#. Программа должна читать XML-файл. Разбирать элементы не...

Создание документа XML через LINQ-to-XML
как создать новый документ xml через LINQ-to-xml XDocument doc =new XDocument(&quot;name.xml&quot;,Encoding.UTF8); ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать контроль заполнения реквизита "ПричинаСписания". . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Программное заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru