Javascript 尝试访问chrome扩展中表单元素的值时出错

Javascript 尝试访问chrome扩展中表单元素的值时出错,javascript,html,forms,google-chrome,Javascript,Html,Forms,Google Chrome,我正在做一个chrome扩展,当按下按钮时,我会得到当前url和输入字段中的值 但我得到了一个错误: Uncaught TypeError: Cannot read property 'value' of null at HTMLButtonElement.myAlert 行中: var ip = document.getElementById('ip_dns').value; 如何正确获取和存储该值 这是我的密码: popup.html <!doctype html> <

我正在做一个chrome扩展,当按下按钮时,我会得到当前url和输入字段中的值

但我得到了一个错误:

Uncaught TypeError: Cannot read property 'value' of null at HTMLButtonElement.myAlert
行中:

var ip = document.getElementById('ip_dns').value;
如何正确获取和存储该值

这是我的密码:

popup.html

<!doctype html>
<html>
  <head>
    <title>DNS Teste</title>
    <script src="popup.js"></script>
  </head>
  <body>
    <form>
        IP DNS
        <input type="text" ip="ip_dns">
        <button id="btn">Teste</button>
    </form>
  </body>
</html>
manifest.json

{
  "manifest_version": 2,

  "name": "Getting started example",
  "description": "This extension shows a Google Image search result for the current page",
  "version": "1.0",

  "browser_action": {
    "default_icon": "icon.png",
    "default_popup": "popup.html"
  },
  "permissions": [
    "activeTab",
    "https://ajax.googleapis.com/",
    "tabs"
  ]
}
它起作用了

函数myAlert(){
//chrome.tabs.getSelected(空,函数(选项卡){
//var url=tab.url;
//日志(“url:+url”);
// });
var ip=document.getElementById('ip_dns')。值;
控制台日志(“IP:+IP”);
}
document.addEventListener('DOMContentLoaded',函数(){
document.getElementById('btn')。addEventListener('click',myAlert');
});

IP DNS
睾丸
这里有输入错误:,也许这就是问题所在?换成
{
  "manifest_version": 2,

  "name": "Getting started example",
  "description": "This extension shows a Google Image search result for the current page",
  "version": "1.0",

  "browser_action": {
    "default_icon": "icon.png",
    "default_popup": "popup.html"
  },
  "permissions": [
    "activeTab",
    "https://ajax.googleapis.com/",
    "tabs"
  ]
}