本文所用的知识点:创建节点和添加节点

创建节点:document.createElement('li')

添加节点  node(父亲节点).appendChild(child)    child:子节点   追加式添加元素
 
insertBefore:使得插入的元素始终显示在最前面
 
 

<!--
* @Author: panda
* @Date: 2020-06-15 21:00:37
* @Last Modified by: panda
* @Last Modified time: 2020-06-15 21:00:37
-->
<!DOCTYPE html>
<html> <head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>删除留言板案例</title>
<style>
* {
margin:
0;
padding:
0;
} a {
text-decoration: none;
color: #333333;
} a:hover {
text-decoration: underline;
color: #45bcf9;
} .del {
float: right;
} ul,
li {
list-style:
none;
} .wrap {
width:
400px;
margin:
100px auto;
} li {
padding:
5px;
border-bottom:
1px solid #eeeeee;
margin: 5px 0;
font-size: 14px;
line-height: 28px;
} button {
background:
#169fe6;
border:
none;
color:
#ffffff;
padding:
5px 15px;
cursor: pointer;
} button:hover {
background:
#45bcf9;
} textarea {
width:
100%;
padding:
10px;
box-sizing:
border-box;
}
</style>
</head> <body> <div class="wrap">
<div> <textarea name="" id="" cols="30" rows="10"></textarea> </div>
<div> <button>评论</button></div>
<ul></ul>
</div> <script>
var text = document.querySelector('textarea');
var btn = document.querySelector('button');
var ul = document.querySelector('ul'); // 注册事件
btn.onclick = function () {
// 判断用户是否输入值
if (text.value == '') {
alert('请输入评论内容!');
return false;
} else {
// 1、创建节点
var li = document.createElement('li');
// 2、将用户输入的值赋添加到li元素中去,使用 innerHTML,再添加一个删除按钮
li.innerHTML = text.value + '<a href = "javascript:;" class = "del">删除</a>';
// 3、添加节点
ul.insertBefore(li, ul.children[0]);
text.value = ''; // 删除操作 node.removeChild(child)
var a = document.querySelectorAll('a');
for (var i = 0; i < a.length; i++) {
a[i].onclick = function () {
// 删除当前a所在的li元素
ul.removeChild(this.parentNode);
}
}
}
}
</script>
</body> </html>

js 留言板(带删除功能)的更多相关文章

  1. 问题:关于一个贴友的js留言板的实现

    需求:用js做一个简单的留言板效果 html部分: 1: <!DOCTYPE> 2: <html lang="zh-en"> 3: <head> ...

  2. vue.js使用更简单的方法制作带删除功能的tooolist

    今天复习了下vue.js,先做了个基本版的todolist,做完后自己想加个删除本项的按钮.一开始做没啥头绪了,试了试无果,查了一把后发现网上的那些方法真的是麻烦,自己动手丰衣足食,自己最后换了思路试 ...

  3. JS 留言板案例

    css代码 ul { list-style: none; } ul li { background-color: pink; line-height: 40px; margin: 10px; widt ...

  4. android控件库(1)-带删除功能的EditText

    DJEditText.java /** * Created by xp.chen on 2016/11/25. */ public class DJEditText extends AppCompat ...

  5. JavaScript学习笔记(三)——留言板知操纵DOM节点

    用JavaScript写了一个简易的留言板,暂不涉及数据库接入等. 1.功能以及流程 主要功能即为留言,用两个文本框接受用户输入的用户名以及留言内容,然后通过"提交留言"按钮将用户 ...

  6. 35.Android之带删除按钮EditText学习

    今天实现Android里自定义带删除功能的EditText,效果如下: 当输入内容时,EditText变为带有一个删除功能按钮的编辑框,如图: 实现代码很简单,直接上代码, 布局文件xml: < ...

  7. IOS UITableView删除功能

    UITbableView作为列表展示信息,除了展示的功能,有时还会用到删除,比如购物车等.删除功能可以直接使用系统自带的删除功能,当横向轻扫cell时,右侧出现红色的删除按钮,点击删除当前cell. ...

  8. 原生JS实现简单留言板功能

    原生JS实现简单留言板功能,实现技术:css flex,原生JS. 因为主要是为了练手js,所以其中布局上的一些细节并未做处理. <!DOCTYPE html> <html lang ...

  9. JS原生编写实现留言板功能

    实现这个留言板功能比较简单,所以先上效果图: 实现用户留言内容,留言具体时间. <script> window.onload = function(){ var oMessageBox = ...

  10. Vue之简易的留言板功能

    今天我将带大家通过Vue的todolist案例来完成一个简易的网页留言板! LES'T GO! 首先我们需要在页面上搭建一个input文本输入框,并设置提交按钮,通过循环指令来完成输入框的信息提交! ...

随机推荐

  1. 关于伺服刹车/急停/前后设备信号对接/PLC输入输出模块的公共端介绍

    一.伺服刹车 关键词:急停,急停中间继电器.刹车中间继电器,刹车使能 正文: 通常情况不用硬件为主导而用程序来主导控制,多场景应用方便修改且安全可靠. 伺服刹车硬件,一般是24v电源给进去,就会释放刹 ...

  2. mock数据模拟和使用

    安装mock,和案axios npm i mockjs npm i axios 后再vue组件中使用 <script>import axios from 'axios'import Moc ...

  3. maven BUILD FAILURE

    maven BUILD FAILURE 使用命令进行导包失败,错误为BUILD FAILURE 然后使用mvn help:system看一下是不是maven有问提 然后出现了新的错误No plugin ...

  4. Cloudera Manager 术语和架构

    ​简介: 本文介绍了Cloudera Manager 的常见术语和架构 Cloudera Manager 术语 为了有效地使用Cloudera Manager,您应该首先了解其术语. 术语之间的关系如 ...

  5. 性能提升3倍、时延降低70%,阿里云企业级存储ESSD云盘再升级!

    9月22日,阿里云存储年度新品发布会上,阿里云基础产品资深产品总监陈起鲲发布了其全球领先的旗舰级块存储产品ESSD的两款新规格(ESSD Auto PL.ESSD PL-X),并宣布了新增的多项企业级 ...

  6. dotnet OpenXML 读取 PPT 形状边框定义在 Style 的颜色画刷

    本文来和大家聊聊在 PPT 形状使用了 Style 样式的颜色画刷读取方法 在开始之前,期望大家已了解如何在 dotnet 应用里面读取 PPT 文件,如果还不了解读取方法,请参阅 C# dotnet ...

  7. 2019-8-31-How-to-output-the-target-message-in-dotnet-build-command-line

    title author date CreateTime categories How to output the target message in dotnet build command lin ...

  8. k8s修改iptables模式变成ipvs

    环境:https://www.cnblogs.com/yangmeichong/p/16477200.html 一.修改 iptables 变成 ipvs 模式 ipvs 采用的 hash 表,ipt ...

  9. 【深度学习】基础--NumPy

    因为深度学习会应用到我们大学时候学习的数学知识---线性代数.(矩阵当年想起来还是挺有意思的,有考研的经历都有感觉) 而在计算机里面如何展示矩阵的计算和应用,就需要运用到NumPy,是Python的一 ...

  10. gin框架获取参数

    目录 httpext包 获取header头里的参数: scene := httpext.GetHeaderByName(ctx, "scene") // online / dev ...