2017-02-16 21 views
0

所以最近我已經開始製作Chrome擴展。我想添加一個文本輸入字段單擊按鈕時,是這樣的:Chrome擴展程序中的文本字段?

清單: ...

"browser_action":{ 
"default_icon": "icon.png", 
"default_popup":"popup.html" 
}, 
"background":{ 
"scripts": ["background.js"] 
}, 

"permissions":["tabs"] 

} 

background.js:

function textfield(){ 
var field = document.createElement("INPUT"); 
field.setAttribute("type","text"); 
field.setAttribute("value","Id:"); 
document.body.appendChild(field); 
} 

popup.html: ...

<button onclick="textfield()"class="button"type="button">Regulations</button> 

所以我遇到的問題是我無法確定爲什麼文本字段出現。 onclick確實有效,但由於某種原因它並未生成。 任何想法?

回答

0

您需要稍微更改代碼以擴展點擊事件。

document.getElementById('regButton').addEventListener('click', function() { 
 
    var field = document.createElement('input'); // INPUT also works 
 
    field.setAttribute('type', 'text'); 
 
    field.setAttribute('name', 'text'); 
 
    document.body.appendChild(field); 
 
    document.body.appendChild(document.createElement("br")); 
 
});
<!DOCTYPE html> 
 
<html> 
 
    <head> 
 
    </head> 
 
    <body> 
 
    <button id="regButton" type="button">Regulations</button> 
 
    </body> 
 
</html>

0

Chrome擴展程序不允許內聯函數。您需要在您的javascript內使用document.getElementById('elementId').addEventListener註冊處理程序。

Reference