Javascript 试图在控制台中输入文本字段,页面将变为空白

Javascript 试图在控制台中输入文本字段,页面将变为空白,javascript,html,input,textfield,Javascript,Html,Input,Textfield,我想写一个简单的程序。我在文本字段中写入文本,单击submit,它就会显示在控制台中。听起来很简单,对吧?我也这么认为。不幸的是,当我单击submit时,页面变成空白。没有错误,只是空白。为什么会这样?即使将submit按钮更改为常规的通用按钮也不起作用 这是我的密码: 函数写入(){ var graffiti=document.getElementById(“graffiti”).value; 控制台日志(涂鸦); } 尝试以下方法 <!DOCTYPE html> <h

我想写一个简单的程序。我在文本字段中写入文本,单击submit,它就会显示在控制台中。听起来很简单,对吧?我也这么认为。不幸的是,当我单击submit时,页面变成空白。没有错误,只是空白。为什么会这样?即使将submit按钮更改为常规的通用按钮也不起作用

这是我的密码:

函数写入(){
var graffiti=document.getElementById(“graffiti”).value;
控制台日志(涂鸦);
}


尝试以下方法

<!DOCTYPE html>
<html>
  <head> </head>
  <body>
      <input type="text" id="graffiti" /><br />
      <input id="myBtn" type="submit" value="submit" />

    <script>
        function write() {
          var graffiti = document.getElementById("graffiti").value;
          console.log(graffiti);
        }

        document.getElementById("myBtn").addEventListener("click", write);
      </script>
  </body>
</html>


函数写入(){ var graffiti=document.getElementById(“graffiti”).value; 控制台日志(涂鸦); } document.getElementById(“myBtn”).addEventListener(“单击”,写入);
这是因为这个例子不起作用

它不是按我们在onclick上传递的函数的名称工作的。 我认为这会与document.write的全球定义产生冲突

将write()重命名为myFunction()



函数myFunction($event){ var graffiti=document.getElementById(“graffiti”).value; 控制台日志(涂鸦); }
我留下了一个有趣的链接


尝试添加e.preventDefault(),可能吗?如何以及在哪里确切地添加它?在write()方法
函数write(e){}
的第一行,以及在第一行添加
e.preventDefault()
;好吧,我就是这么做的。或者我也需要在html中加上“e”吗?这很有效,谢谢。但我还是希望我知道为什么另一个没有。疯了!!调用onclick事件时,它的工作方式与函数名不同,我认为它会与document.write rename write()到myFunction()的全局定义产生冲突
<!DOCTYPE html>
<html>
  <head> </head>
  <body>
        <input type="text" id="graffiti"><br>
        <input id="dasd" type="submit" value="submit" onclick="myFunction()">

    <script>
        function myFunction($event){
            var graffiti = document.getElementById("graffiti").value;
            console.log(graffiti);        
        }
    </script>
  </body>
</html>