2013-08-07 31 views
0

我下面的代碼:爲什麼使用createElement值不能正確顯示我的輸入元素?

$newDOM = new DOMDocument('1.0', 'utf-8'); 
$foo = $newDOM->createElement('Input', 'THIS IS MY VALUE'); 
$newDOM->appendChild($foo); 
echo $newDOM->saveHTML(); 

這是隻輸出:<Input>

但是,當我改變的createElement到「DIV」它的作品沒關係

這是什麼與 '格' 或其他任何輸入輸出:

<div>THIS IS MY VALUE</div> 

這是我var_dump($foo)

object(DOMElement)#5 (17) { 
    ["tagName"]=> 
    string(5) "Input" 
    ["schemaTypeInfo"]=> 
    NULL 
    ["nodeName"]=> 
    string(5) "Input" 
    ["nodeValue"]=> 
    string(16) "THIS IS MY VALUE" 
    ["nodeType"]=> 
    int(1) 

    ["parentNode"]=> 
    string(22) "(object value omitted)" 
    ["childNodes"]=> 
    string(22) "(object value omitted)" 
    ["firstChild"]=> 
    string(22) "(object value omitted)" 
    ["lastChild"]=> 
    string(22) "(object value omitted)" 
    ["previousSibling"]=> 
    NULL 
    ["attributes"]=> 
    string(22) "(object value omitted)" 
    ["ownerDocument"]=> 
    string(22) "(object value omitted)" 
    ["namespaceURI"]=> 
    NULL 
    ["prefix"]=> 
    string(0) "" 
    ["localName"]=> 
    string(5) "Input" 
    ["baseURI"]=> 
    NULL 
    ["textContent"]=> 
    string(16) "THIS IS MY VALUE" 
} 
+0

是唯一顯示 – user2612821

+0

THIS IS MY VALUE
顯示當我使用DIV – user2612821

回答

2

createElement的第二個參數是您要創建的標記的內容。 <input>標籤不能包含文本。您需要設置其value屬性。您正試圖製作<input value="this is my value">,而不是<input>this is my value</input>

請參閱createAttribute

+0

請給OP一個例子,以改善您的文章。 –

+0

但是,這將如何工作與單選按鈕,這是我的問題... – user2612821

+0

也::當我呼應它或將其放置在一個變量...這樣做的工作,但我可以通過單選按鈕迴應它。 。元素的值。默認情況下,將創建一個空元素。該值也可以稍後用DOMElement :: $ nodeValue進行設置。 – user2612821

相關問題