留言板主要代碼展示


<!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>Document</title>
    <link rel="stylesheet" href="css/main.css">
    <script src="js/jquery-1.12.4.min.js"></script>
    <script src="arttemplate/template-native.js"></script>

    <script id="tem" type="text/html">
        <!-- 將拿到的數據中 的comments變量 進行遍歷 -->
    <% for(var i=0;i < comments.length;i ++){ %>
        <!-- 在每個li中 添加一個自定義的標簽屬性,用來記錄自己的id -->
        <li uid="<%= comments[i].id %>">
            <p class="floor">
                <%= comments[i].id %><a href="javascript:;" class="delete">刪除</a>
            </p>
            <p class="author">層主:<span class="name">
                    <%= comments[i].username %>
                </span></p>
            <p class="content">
                <%= comments[i].content %>
            </p>
        </li>
        <% } %>

    </script>
</head>

<body>
    <div class="main">
        <div class="post">
            <h2>新年快樂</h2>
            <p class="author">樓主:<span>alian</span></p>
            <p class="txt">新年快樂,萬事如意</p>
        </div>
        <hr>
        <div class="reply">
            <h4>發表回復</h4>
            <p>用戶名:<input type="text" class="usename"></p>
            <textarea class="contents"></textarea><br>
            <input type="button" value="發表" class="btn">
        </div>

        <div class="cmst">
            <ul class="list">
                <!-- <li>
                    <p class="floor">1樓<a href="javascript:;" class="delete">刪除</a></p>
                    <p class="author">層主:<span class="name">哈哈哈</span></p>
                    <p class="content">happy new year!</p>
                </li> -->
            </ul>
        </div>
    </div>

    <script>
        //獲取元素
        var $list = $(".cmst .list");
        var $comment = $(".reply .contents");
        var $user = $(".reply .usename");
        var $btn = $(".reply .btn")
        //獲取后台數據
        getData();
        //封裝函數
        function getData(){
            $.ajax({
                url: "http://localhost:3000/db",
                type: "GET",
                success: function (data) {
                    // console.log(data);
                    //將得到的數據添加到模板
                    $list.html(template("tem", data));

                    //在這里可以正常獲取所有添加的元素
                    //需要獲取刪除按鈕,並添加點擊事件,刪除自己所在的li標簽
                    deleteData();
                }
            })
        }
        

        //增加一項新的數據到數據庫中
        //添加點擊事件
        $btn.click(function () {
            var username = $user.val();
            var content = $comment.val();
            $.ajax({
                url: "http://localhost:3000/comments",
                type: "POST",
                dataType: "json",
                data: { username: username, content: content },
                success: function (data) {
                    // $list.append(template("tem", { "comments": [data]}));
                    getData();
                }
            }) 
            // 清空輸入
            $user.val("");
            $comment.val("");
        })
  
        //封裝刪除函數
        function deleteData(){
            // 定義 點擊按鈕刪除
            $(".cmst .list .delete").click(function(){
                // 要找到自己的祖先中的li標簽
                $li = $(this).parents("li");
                // 找到li標簽記錄在數據庫中的id
                var index = $li.attr("uid");
                // 發送請求
                $.ajax({
                    url: " http://localhost:3000/comments/"+index,
                    type: "DELETE",
                })
                // 從DOM結構中刪除對應的li
                $li.remove();
            })
        }

    </script>
</body>

</html>

json文件里的所有數據

傳遞的數據:



免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM