效果如下:
(真可爱啊)
实现原理:
每点击一次提交按钮,就创建一个 li 标签(本身 ul 里没有 li 标签,ul 在 textarea 下方)然后使用 innerHTML 将textarea 的 value 值传给 li 标签的内容。删除用到了 removeChild
JS 实现代码:
<script>
var btn=document.querySelector('button');
var text=document.querySelector('textarea');
var ul=document.querySelector('ul');
btn.onclick=function(){
if(text.value==''){
alert('不能提交空留言');
}else{
var lis=document.createElement('li');
lis.innerHTML=text.value + "<button class='del'>删 除</button>";
ul.insertBefore(lis,ul.children[0]);
text.value='';
//删除留言
var del=document.querySelectorAll('.del');
for(var i=0;i<del.length;i++){
del[i].onclick=function(){
ul.removeChild(this.parentNode);
}
}
}
}
</script>
完整代码:
<style>
.box{
box-sizing: border-box;
width: 500px;
height: 1200px;
margin: 100px auto;
}
textarea{
box-sizing: border-box;
padding: 10px;
width: 600px;
height: 145px;
background-color: rgb(236, 235, 235);
font-size: 20px;
outline: none;
border: 2px solid;
-webkit-border-radius:30px;
-moz-border-radius:30px;
}
.sub{
position: absolute;
left: 965px;
top: 257px;
width: 100px;
height: 50px;
background-color: rgb(253, 236, 78);
font-weight: bold;
/* border: 1px solid; */
font-size: 22px;
-webkit-border-radius:30px;
-moz-border-radius:30px;
}
.sub:hover{
background-color: rgb(248, 100, 100);
color: rgb(255, 255, 255);
}
ul{
position: absolute;
left: 435px;
top: 241px;
width: 460px;
height: 10px;
}
li{
padding-left: 10px;
line-height: 50px;
-webkit-border-radius:30px;
-moz-border-radius:30px;
width: 460px;
height: 50px;
background-color: rgb(121, 190, 255);
border-bottom: 2px solid;
margin-bottom: 10px;
}
.del{
margin-top: 13px;
margin-right: 10px;
float: right;
width: 60px;
height: 25px;
-webkit-border-radius:30px;
-moz-border-radius:30px;
background-color: rgb(248, 100, 100);
color: rgb(255, 255, 255);
border: 1px solid;
border-color: black;
font-weight: bold;
}
.del:hover{
background-color: rgb(209, 29, 29);
}
</style>
</head>
<body>
<div class="box">
<textarea name="" id="" cols="30" rows="10" placeholder="请输入留言"></textarea>
<br>
<button class="sub">提 交</button>
<ul>
</ul>
</div>
<script>
var btn=document.querySelector('button');
var text=document.querySelector('textarea');
var ul=document.querySelector('ul');
btn.onclick=function(){
if(text.value==''){
alert('不能提交空留言');
}else{
var lis=document.createElement('li');
lis.innerHTML=text.value + "<button class='del'>删 除</button>";
ul.insertBefore(lis,ul.children[0]);
text.value='';
//删除留言
var del=document.querySelectorAll('.del');
for(var i=0;i<del.length;i++){
del[i].onclick=function(){
ul.removeChild(this.parentNode);
}
}
}
}
</script>
</body>