powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Как считать результат запроса в формате XML
4 сообщений из 4, страница 1 из 1
Как считать результат запроса в формате XML
    #34471914
Valerik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем привет!

У меня выполняется завпрос через AJAX результат выдается во втаком формате
<?xml version="1.0" standalone="yes"?>
<DocumentElement>
<customers>
<customer_number>1</customer_number>
<customer_name>test</customer_name>
<cust_street>test street </cust_street>
<cust_city>test city </cust_city>
<cust_st>22</cust_st>
<cust_zip>33 </cust_zip>
<NameOut> 1 -test</NameOut>
</customers>
</DocumentElement>
я хочу получить данные отдельно на наименованию допустим customer_number .
но что не могу догнать как считать
делаю вот так :
response - результат
var xmlDoc=new ActiveXObject("Microsoft.XMLDOM");//Create the XMLDOM object
xmlDoc.async = false;
xmlDoc.loadXML(response);//Load the responseText into the XMLDOM document
var TerritoriesElem = xmlDoc.getElementsByTagName("customers");
TerritoriesElem[0].getAttribute("customer_number); - выдает null
Как считать не пойму
...
Рейтинг: 0 / 0
Как считать результат запроса в формате XML
    #34472104
Фотография SkyLight
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Valerik
TerritoriesElem[0].getAttribute("customer_number); - выдает null


Ну естессно. customer_number - это ведь у тебя узел, а не атрибут.
...
Рейтинг: 0 / 0
Как считать результат запроса в формате XML
    #34472488
Valerik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SkyLight Valerik
TerritoriesElem[0].getAttribute("customer_number); - выдает null


Ну естессно. customer_number - это ведь у тебя узел, а не атрибут.
Сделал вот так вроде работает :)
var xmlDoc=new ActiveXObject("Microsoft.XMLDOM");//Create the XMLDOM object
xmlDoc.async = false;
xmlDoc.loadXML(response);//Load the responseText into the XMLDOM document

var TableRezl = xmlDoc.getElementsByTagName("customers");//Create the EmployeeTerritories element
if(TableRezl.length > 0)//If there are one or more TERRITORIES nodes
{
var currNode = TableRezl[0].childNodes;
for (var i=0;i <currNode.length ;i++)
{
if(currNode.item(i).nodeName=='customer_number')
{
document.forms[0].TextCustNumber.value=currNode.item(i).text;
}
else if (currNode.item(i).nodeName=='customer_name')
{
document.forms[0].TextName.value=currNode.item(i).text;
}
else if (currNode.item(i).nodeName=='cust_street')
{
document.forms[0].TextAddress.value=currNode.item(i).text;
}
else if (currNode.item(i).nodeName=='cust_city')
{
document.forms[0].TextCity.value=currNode.item(i).text;
}
else if (currNode.item(i).nodeName=='cust_st')
{
document.forms[0].TextState.value=currNode.item(i).text;
}
else if (currNode.item(i).nodeName=='cust_zip')
{
document.forms[0].TextZip.value=currNode.item(i).text;
}
else if (currNode.item(i).nodeName=='cust_store_num')
{
document.forms[0].TextCustStoreNum.value=currNode.item(i).text;
}
...
Рейтинг: 0 / 0
Как считать результат запроса в формате XML
    #34472521
Фотография SkyLight
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, перебор нодов можно делать и так (проще, как по мне):
Код: plaintext
1.
2.
3.
4.
5.
var currNode = TableRezl[ 0 ].childNodes;
for (var i=currNode.firstChild; i; i=i.nextSibling){
   if(i.nodeName=='customer_number')
      document.forms[ 0 ].TextCustNumber.value=i.text;
   .....
}
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Как считать результат запроса в формате XML
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]