我已经创建了一个索引文件,以便将在此处输入的信息添加到创建的元素中(这是用于审查部分的index.html
文件在此处),其中包括CSS和js
let name = document.querySelector('.name').value;
let message = document.querySelector('.message').value;
let btn = document.getElementById('button');
let div = document.querySelector('.items')
btn.addEventListener('click', ()=>{
let item = document.createElement('div')
let inner = `
<h3>${name}</h3>
<p>${message}</p>
`
item.className = "message-item"
item.innerHTML = inner
div.append(item)
});
html, body{
padding: 0;
margin: 0;
}
.msg{
padding: 2em;
margin: 2em;
border-radius: 2vh;
height: 70vh;
display: flex;
align-items: center;
justify-content: left;
flex-direction: column;
background-color: #1e90ff;
}
.items{
height: 65vh;
overflow: scroll;
color: white;
width: 100%;
overflow-x: hidden;
margin: 10px;
}
input{
padding: 10px;
border: none;
border-radius: 8px;
outline: none;
font-size: 1em;
}
#button{
padding: 10px 20px;
border-radius: 8px;
border: none;
font-size: 1em;
}
.button{
padding: 10px 20px;
border-radius: 8px;
border: none;
font-size: 1em;
}
.message-item{
background-color: black;
padding: 1em;
border-radius: 8px;
margin: 3px;
}
<!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">
<title></title>
</head>
<body>
<div class="msg">
<div class="items"></div>
<div class="input">
<input type="text" class="name" placeholder="Name">
<input type="text" class="message" placeholder="Message">
<button id="button">Submit</button>
<button type="reset">Reset</button>
</div>
</div>
</body>
</html>
因此,我希望它追加具有不同值的元素,例如,一旦我输入name“harry”和message作为“this is the message”,然后我重置并输入另一个name和message,则新创建的元素应显示新输入的name和message
3条答案
按热度按时间pgpifvop1#
name
变量应该是指向元素的指针,而不是指向值的指针。此外,您应该在添加后清除输入。
更好的方法
一个更好的例子是使用表单。这样,您就可以利用内置的表单验证、提交和重置功能。
例如,您可以通过元素的名称调用元素,并且您还可以获得Enter键支持的额外好处。
1.输入名称
1.按Tab键
1.请输入留言
1.按Enter键
1.项目已添加
1.表单已清除
1.焦点发送到名称
本地存储
这是一个本地存储的例子。这里的主要思想是如何存储和恢复消息的状态。
nvbavucw2#
你需要在每次按下提交按钮时得到你输入的值,而不是在页面加载时得到一次,而且你还需要在按下重置按钮时清除你的输入
deyfvvtc3#
在输入被填充之前,您可以从输入中获取值。它们只是字符串值,在输入更改时不会动态更新。
我将这些行移到了函数内部,这样每次单击按钮时都可以获得最新的数据。