parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

appendChild

skiv 30.10.2008 16:31

$testxdoc[^xdoc::create{<?xml version="1.0" encoding="WINDOWS-1251" standalone="no"?>
<document>
	<pub>Публикация</pub>
</document>}]

# добавляем узел letter
$lNode[^testxdoc.createElement[letter]]
$tmp[^testxdoc.documentElement.appendChild[$lNode]]

# выбираем существующий в дереве узел
$pub[^testxdoc.selectSingle[/document/pub]]

# пытаемся перенести существуюший узел в только что созданный
#$pub[^testxdoc.documentElement.removeChild[$pub]] 
$tmp[^lNode.appendChild[$pub]]

# результат
^taint[xml][^testxdoc.string[$.indent[yes]]]
На этом скрипте парсер 3.2.3b (compiled on i686-pc-linux-gnu) падает с сообщением в лог - Premature end of script headers: parser3
в браузере вижу Internal Server Error

Если раскомментировать строку с removeChild - работает.

По идее должно хватать одного appendChild, ибо в доках (http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core.html#method-appendChild) написано:
If the newChild is already in the tree, it is first removed.


  • appendChild, skiv 30.10.2008 16:31