Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Мои вопросы по JavaScript
Форумы портала PHP.SU » Клиентская разработка » JavaScript & VBScript » Мои вопросы по JavaScript

Страниц (5): [1] 2 3 4 5 »
 

1. Bio man - 21 Апреля, 2012 - 14:28:52 - перейти к сообщению
Как в переменную загрузить xml документ для дальнейшей работы с DOM?
2. DeepVarvar - 21 Апреля, 2012 - 15:09:23 - перейти к сообщению
В переменную можно "загрузить" строку.
Затем сделать что-то вроде:
CODE (javascript):
скопировать код в буфер обмена
  1. // то что надо "загрузить"
  2. var xml = "исходный текст xml-документа";
  3. // обертку только создадим, вставлять в дом не будем
  4. var xmlWrapper = document.createElement("div");
  5. xmlWrapper.innerHTML = xml;
  6. // теперь DOM-структура xml должна быть доступна внутри обертки
  7. // хотя я это наверняка не проверял
3. tuareg - 21 Апреля, 2012 - 15:20:32 - перейти к сообщению
Bio man пишет:
Как в переменную загрузить xml документ для дальнейшей работы с DOM?

Просто приравниваешь к переменной и работаешь так же как и с DOM.
CODE (javascript):
скопировать код в буфер обмена
  1.  
  2. var xml="исходный текст xml-документа";
  3. var items = xml.getElementsByTagName("item");// найдем все тэги item
  4.  

Вот как-то так Улыбка
4. Bio man - 21 Апреля, 2012 - 16:53:02 - перейти к сообщению
Мне нужно загрузить с файла. типо как file_get_contents тока в JS.
5. LIME - 21 Апреля, 2012 - 17:06:04 - перейти к сообщению
стандартный JS не позволяет читать/писать файлы
(Добавление)
клиентский
6. IllusionMH - 21 Апреля, 2012 - 17:12:22 - перейти к сообщению
Bio man, если на сервере _http://xmlhttprequest.ru/#props свойство responseXML у XMLHTTPRequest объекта
если на клиенте - то только отправить на сервер, и потом получить обратно результат какой-то
7. tuareg - 21 Апреля, 2012 - 17:40:00 - перейти к сообщению
Bio man По моему, ты пытаешься велосипед изобрести. Улыбка
У тебя есть xml, отработал его( внес изменения и т.д). Простым ajax отправил его на сервер. А на сервере сделай file_get_contents.
Кстати на javasript.ru есть раздел "Аналоги ф-й php", так вот там аналог этой ф-и и есть простой ajax.
8. Bio man - 21 Апреля, 2012 - 18:51:07 - перейти к сообщению
Наверно вы не так поняли или я не так объяснил. Странички эти строго локальны, без взаимодействия с сервером, это как бы презентация. Данные презентации храню в XML. Или сделать плоскую модель, типо структуру файла присваивать в отдельном скрипте и работать с этой переменной?
9. LIME - 21 Апреля, 2012 - 18:53:59 - перейти к сообщению
да
придется так
10. Bio man - 21 Апреля, 2012 - 20:14:08 - перейти к сообщению
хм, а чего текст может состоять из 1 стоки? приходится всю структуру делать 1 строкой. Может есть решение?
11. tuareg - 21 Апреля, 2012 - 21:17:31 - перейти к сообщению
контрактация
CODE (javascript):
скопировать код в буфер обмена
  1.  
  2. var str='';
  3. str+='первая строка ';
  4. str+='вторая строка ';
  5. str+='третья строка ';
  6. str+='n-ая строка';
  7. console.log(str)//==>('первая строка вторая строка третья строка n-ая строка';
  8.  
12. Bio man - 21 Апреля, 2012 - 23:49:19 - перейти к сообщению
CODE (htmlphp):
скопировать код в буфер обмена
  1. <?xml version="1.0"?>
  2. <root>
  3.         <material id="1">
  4.                 <head>Немного теории</head>
  5.                 <content>
  6.                         <img class="lbox" src="images/DaVinci.jpg" style="float: left; padding: 5px; height: 50%;" />
  7.                         <p><strong>Симме&#769;три&#769;я</strong>, в широком смысле — соответствие, неизменность (инвариантность), проявляемые при каких-либо изменениях, преобразованиях.</p>
  8.                         <p>Отсутствие или нарушение симметрии называется <strong>асимметри&#769;ей</strong>.</p>
  9.                         <p>В математике — симметрийные свойства описываются с помощью <em>теории групп</em>.</p>
  10.                         <p>Симметрии могут быть <em>точными</em> или <em>приближёнными</em>.</p>
  11.                 </content>
  12.         </material>
  13.         <material id="2">
  14.                 <head></head>
  15.                 <content>
  16.                        
  17.                 </content>
  18.         </material>
  19. </root>

Скажите, как получить доступ к узлу? А точнее, как получить содержимое head и content отдельно?
13. LIME - 21 Апреля, 2012 - 23:56:32 - перейти к сообщению
CODE (javascript):
скопировать код в буфер обмена
  1. var heads=xml.getElementsByTagName('head');
  2. writeln(heads[0].innerHTML);
типа этого
(Добавление)
CODE (javascript):
скопировать код в буфер обмена
  1. for(var i=0; i<arr.length; i++) {}
14. Bio man - 22 Апреля, 2012 - 00:04:58 - перейти к сообщению
CODE (javascript):
скопировать код в буфер обмена
  1. var xml = '<?xml version="1.0"?><root><material id="1"><head>Немного теории</head><content><img class="lbox" src="images/DaVinci.jpg" style="float: left; padding: 5px; height: 50%;" /><p><strong>Симме&#769;три&#769;я</strong>, в широком смысле — соответствие, неизменность (инвариантность), проявляемые при каких-либо изменениях, преобразованиях.</p><p>Отсутствие или нарушение симметрии называется <strong>асимметри&#769;ей</strong>.</p><p>В математике — симметрийные свойства описываются с помощью <em>теории групп</em>.</p><p>Симметрии могут быть <em>точными</em> или <em>приближёнными</em>.</p></content></material><material id="2"><head></head><content></content></material></root>';
  2. var heads=xml.getElementsByTagName('head');
  3. writeln(heads[0].innerHTML);

0 эмоций. Я JS вообще не знаю. Кароче не работает
(Добавление)
и как собственно посмотреть дамп переменной? По аналогии var_dump()
(Добавление)
вот что показал хром в консоле
Цитата:
Uncaught TypeError: Object <?xml version="1.0"?><root><material id="1"><head>Немного теории</head><content>.....</content></material><material id="2"><head></head><content></content></material></root> has no method 'getElementsByTagName'
15. DelphinPRO - 22 Апреля, 2012 - 00:20:42 - перейти к сообщению
Bio man
посмотри http://easy4web[dot]ru/?p=393
(Добавление)
вот так еще попробуй
CODE (javascript):
скопировать код в буфер обмена
  1. var heads=xml.documentElement.getElementsByTagName('head');
  2. alert(heads[0].nodeValue);

 

Powered by ExBB FM 1.0 RC1