簡體   English   中英

使用純Javascript創建輸入字段

[英]Create an input field using pure Javascript

我試圖只用JS創建這樣的元素:

<input type="text" value="default">

為此,我嘗試了以下代碼:

var mi = document.createElement("input");
mi.type= "text"
mi.value = "default"

但是,當我在Chrome Dev Tools中運行它時,它只會創建以下元素:

<input type="text">

我想念什么?

設置的屬性 HTML元素是不完全一樣的,因為它的屬性設置為同樣的事情。

您最有可能想要使用element.setAttribute

var mi = document.createElement("input");
mi.setAttribute('type', 'text');
mi.setAttribute('value', 'default');

現在你可以看到

new XMLSerializer().serializeToString(mi);
// "<input type="text" value="default">"

在您的示例中, <input>顯示的仍將是default ,只是未將其設置為attribute

還要注意,如果用戶更改了<input> (例如鍵入),則設置屬性將不再更改該 ,但設置value屬性仍將對其進行更改。 同樣,這是因為屬性不同於屬性

var i = document.createElement("input"); //input element, text
i.setAttribute('type',"text");
i.setAttribute('name',"username");
i.setAttribute('value',"default");

我想你錯過了; 在“文本”之后。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM