2013-10-02 47 views
0

php中的innerHTML DomDocument在簡單的PHP腳本中不起作用,我無法通過id設置html元素的內部html,沒有錯誤/警告!我該怎麼辦 ?DomDocument innerHTML不能在簡單的php腳本中工作

(我還檢查文件名和HTML元素的id)

$index = new DomDocument; 
    $index->validateOnParse = true; 
    $index->formatOutput = true; 


    $index->loadHTML('index.php'); 

    $index->getElementById('element-unique-id')->innerHTML = 'some text'; 


    echo $index->saveHTML(); 

的放出來是空白。

+3

['DOMElement'](http://php.net/manual/class.domelement.php)(以及擴展名['DOMNode'](http://php.net/manual/class.domnode.php) ))沒有「innerHTML」屬性。你所做的只是設置一個未使用的動態公共屬性 – Phil

+1

順便說一下,你可以檢查'$ index->​​ saveHTML();'是否爲false - 這意味着一個錯誤。 – Cthulhu

回答

1

由於沒有inneHTML - 屬性,你可以通過創建和附加一個新DOMText節點解決這個問題:還The DOMText classDOMText::__construct

$index->getElementById('element-unique-id') 
     ->appendChild(new DOMText('some text')); 

見。

+0

非常好,坦克:) –