溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

JS如何實現簡易留言板

發布時間:2021-04-19 09:44:19 來源:億速云 閱讀:2488 作者:小新 欄目:web開發

這篇文章將為大家詳細講解有關JS如何實現簡易留言板,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

具體內容如下

今天的案例主要是對節點進行操作

創建節點、添加節點、刪除節點以及為節點添加內容的操作。 

就是一個簡單的留言板功能,可以發布留言,刪除留言。

主要思路:兩個鼠標點擊事件——點擊發布按鈕事件和點擊刪除按鈕事件

發布按鈕事件:首先在文檔中創建li節點。然后第二步,先把文本域中的內容獲取出來賦給li,這里要注意,文本域是表單元素,獲取表單元素的內容是使用表單的特有屬性value,要與普通元素獲取內容的innerHTML進行區分;再把刪除鏈接添加到li中,利用字符串拼接的方式。最后把li節點添加到ul中,添加的方式有兩種,是直接添加到ul列表項的末尾,也可以添加到指定位置。這里我是選中插入到ul列表的最前面。

刪除按鈕事件:點擊刪除按鈕的事件是在把創建的li添加到ul中之后定義的。刪除的操作主要是要弄清除是父節點元素刪除子節點元素。在這里點擊刪除鏈接,刪除的是當前被點擊的按鈕所在的li。li是刪除連接的父節點元素。

分析永遠比敲代碼重要。要先分析,再去敲代碼,實現需求。

先看效果圖吧

默認是沒有任何內容的

JS如何實現簡易留言板

在文本域中輸入,點擊發布,可以發布留言,如果發完想刪除,可以點擊里面的刪除按鈕,刪除留言

JS如何實現簡易留言板

JS如何實現簡易留言板

刪除操作后: 

JS如何實現簡易留言板

JS代碼:

<script>
  // 點擊發布,會把文本域中的內容發布到ul中
  // 點擊刪除,會刪除留言
  // 1.獲取事件源 文本域 按鈕 文本域
  var text = document.querySelector('textarea');
  var btn = document.querySelector('button');
  var ul = document.querySelector('ul');
  // 2.注冊點擊事件
  btn.onclick = function () {
   // 首先會創建一個li 并把文本域的內容給li 再把li添加到ul中
   var li = document.createElement('li');
   if (text.value == '') {
    alert('您沒有輸入內容')
   } else {
    // 文本域的值 value
    // 增加一個刪除留言的按鈕
    li.innerHTML = text.value + '<a href="javascript:;" rel="external nofollow" rel="external nofollow" >刪除</a>';
    ul.insertBefore(li, ul.children[0]); // 把最新的發布放到最前面
    // ul.appendChild(li);
 
    // 3.注冊刪除點擊事件
    var removeBtn = document.querySelectorAll('a');
    for (var i = 0; i < removeBtn.length; i++) {
     removeBtn[i].onclick = function () {
      ul.removeChild(this.parentNode);
     }
    }
   }
  }
</script>

全部代碼:

<!DOCTYPE html>
<html lang="en">
 
<head>
 <meta charset="UTF-8">
 <meta name="viewport" content="width=device-width, initial-scale=1.0">
 <title>留言板</title>
 <style>
  * {
   margin: 0;
   padding: 0;
  }
 
  body {
   padding: 100px;
  }
 
  textarea {
   width: 200px;
   height: 100px;
   border: 1px solid pink;
   outline: none;
   resize: none;
  }
 
  ul {
   margin-top: 50px;
  }
 
  li {
   width: 300px;
   padding: 5px;
   background-color: rgb(245, 209, 243);
   color: red;
   font-size: 14px;
   margin: 15px 0;
  }
 
  li a {
   float: right;
  }
 </style>
</head>
 
<body>
 <textarea name="" id=""></textarea>
 <button>發布</button>
 <ul>
 
 </ul>
 <script>
  // 點擊發布,會把文本域中的內容發布到ul中
  // 點擊刪除,會刪除留言
  // 1.獲取事件源 文本域 按鈕 文本域
  var text = document.querySelector('textarea');
  var btn = document.querySelector('button');
  var ul = document.querySelector('ul');
  // 2.注冊點擊事件
  btn.onclick = function () {
   // 首先會創建一個li 并把文本域的內容給li 再把li添加到ul中
   var li = document.createElement('li');
   if (text.value == '') {
    alert('您沒有輸入內容')
   } else {
    // 文本域的值 value
    // 增加一個刪除留言的按鈕
    li.innerHTML = text.value + '<a href="javascript:;" rel="external nofollow" rel="external nofollow" >刪除</a>';
    ul.insertBefore(li, ul.children[0]); // 把最新的發布放到最前面
    // ul.appendChild(li);
 
    // 3.注冊刪除點擊事件
    var removeBtn = document.querySelectorAll('a');
    for (var i = 0; i < removeBtn.length; i++) {
     removeBtn[i].onclick = function () {
      ul.removeChild(this.parentNode);
     }
    }
   }
  }
 </script>
</body>
 
</html>

關于“JS如何實現簡易留言板”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

js
AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女