簡體   English   中英

每次按下按鈕時如何獲取新的輸入值?

[英]How to get new input value with each button press?

單擊按鈕后,它會顯示來自輸入值 + 自定義字符串的警報。 我的問題是,單擊按鈕並更改輸入值后,再次單擊按鈕會顯示舊值而不是新值。

Javascript

function test() {
var message = document.getElementById("name").value;
var newMessage = message + " " + "HELLO!";
document.getElementById("send").addEventListener("click", function (e) {
e.stopImmediatePropagation();
alert(newMessage);
console.log(newMessage);
});
}

HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<script src="main.js"></script>
<link rel="stylesheet" href="style.css">
<title>Greet your friend</title>
</head>
<body>
<label class="main">Enter the name of your friend you want to greet</label>
<input class="main" type="text" name="name" id="name" value="George">
<button class="main" id="send" onclick=test()>DONE</button> 
</body>
</html>

你有無數的語法問題,我修復了它們。 您不需要在這里使用stopImmediatePropagation

 function test() { var message = document.getElementById("name").value; var newMessage = message + " " + "HELLO;"; // -- You don't need a new variable to apply them -- // message += " " + "HELLO."; // -- Or this one which is better and newer; Called 'String Literals' -- // message = `${message} HELLO.`; alert(newMessage); console.log(newMessage); };
 <label class="main">Enter the name of your friend you want to greet</label> <input class="main" type="text" id="name" /> <button class="main" id="send" onclick="test()">DONE</button>

暫無
暫無

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

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