1 回答

TA貢獻1773條經驗 獲得超3個贊
您不需要“setInterval”來執行此操作
當按鈕元素位于表單元素中時,它默認使用發送功能,在本例中該功能會刷新頁面。因此,字段的內容一旦被填充就被清理。
我刪除了表單元素?,F在,當單擊按鈕時,input將獲取元素的內容并顯示在p元素中
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<input id="mail" type="text" name="email" value="[email protected]">
<button id="btn" onclick="abc()">click On me</button>
<p id='text'></p>
<script>
function abc() {
var mail = document.getElementById('mail');
var text = document.getElementById('text');
text.innerText = mail.value;
}
</script>
</body>
</html>
帶 setInterval 的版本
按下按鈕后“setInterval”將被激活。每 100 毫秒,它就會從輸入元素中獲取所有信息并將其填充到 P 元素中。您可以在字段中書寫,文本將立即出現在另一個元素中。為了在按下按鈕后不累積空格,我在代碼中設置了一行來停用按鈕
function abc() {
document.getElementById('btn').setAttribute("disabled", true);
setInterval(() => {
var mail = document.getElementById('mail');
var text = document.getElementById('text');
text.innerText = mail.value;
}, 100);
}
<input id="mail" type="text" name="email" value="[email protected]">
<button id="btn" onclick="abc()">click On me</button>
<p id='text'></p>
添加回答
舉報