JS实现留言板功能[楼层效果展示]


Posted in Javascript onDecember 27, 2017

功能实现:

1.发布人和发布内容非空校验
2.编辑删除功能
3.楼层效果展示
4.发布时间展示

效果图

JS实现留言板功能[楼层效果展示] 

目录

JS实现留言板功能[楼层效果展示] 

tools.js

时间工具包

function getTime(){
  var weeks = ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"];
  var date = new Date();
  var year = date.getFullYear();
  var month = date.getMonth()+1;
  var da = date.getDate();
  var hour = date.getHours()<10 ? "0"+date.getHours() : date.getHours() ;
  var minute = date.getMinutes()<10 ? "0"+date.getMinutes() : date.getMinutes() ;
  var second = date.getSeconds()<10 ? "0"+date.getSeconds() : date.getSeconds() ;
  var week = date.getDay();
  var time = year+"年"+month+"月"+da+"日 "+hour+":"+minute+":"+second +" "+weeks[week];
  return time;
}

留言板.html

<!DOCTYPE html>
<html>
  <head lang="en">
    <meta charset="UTF-8">
    <title></title>
    <script type="text/javascript" src="tools.js"></script>
    <style>
      #box {
        width: 800px;
        margin: 0 auto;
      }
      textarea {
        width: 800px;
      }
      #li {
        display: block;
        border-bottom: 1px dashed #ebebeb;
        margin: 10px 0;
        padding: 8px 0;
      }
    </style>
  </head>
  <body>
    <div id="box">
      <h3>留言板 </h3>
      发布人:<input type="text" id="person" value="">
      共<input style="border: 0;" name="" id="louceng">
      <textarea name="" id="text" rows="10"></textarea>
      <input type="button" value="确认发布" id="btn" />
      <h3>全部留言</h3>
      <hr/>
    </div>
    <script>
      var num = 0;
      var num1 = 0;
      var box = document.getElementById("box");
      var text = document.getElementById("text");
      var btn = document.getElementById("btn");
      var person = document.getElementById("person");
      var ul = document.createElement("ul");
      ul.id = "ul1";
      var time = document.createElement("div");
      document.getElementById("louceng").value=num+"楼";
      btn.onclick = function() {
        //非空判断
        if(person.value==""||person.value==null){
          alert("发布人不允许为空!");
          return false;
        }
        if(text.value==""||text.value==null){
          alert("内容不允许为空!");
          return false;
        }
        //获取时间
        num = num+1;
        var datetime = getTime();
        time = document.createTextNode("发布时间:" + datetime);
        var li = document.createElement("li");
        li.id = "li";
        //创建删除功能
        var oA = document.createElement("a");
        var oAtext = document.createTextNode("删除");
        oA.href = "#";
        oA.appendChild(oAtext);
        //创建发布文本框
        var fabu = document.createElement("textarea");
        fabu.rows = "10";
        fabu.style = "margin: 0px; width: 760px; height: 138px;";
        fabu.value = text.value;
        fabu.disabled="disabled";
        //创建编辑功能
        var oB = document.createElement("a");
        var oBtext = document.createTextNode("编辑");
        oB.href = "#";
        oB.appendChild(oBtext);
        //创建确认按钮
        var butt = document.createElement("input");
        butt.type = "button";
        butt.value = "确认";
        butt.style.display = "none";
        //解决兼容问题
        var ali = ul.getElementsByTagName("li");
        if(ali.length == 0) {
          ul.appendChild(li);
        } else {
          ul.insertBefore(li, ali[0]);
        }
        //添加节点
        box.appendChild(ul);
        var lou = document.createTextNode("第"+num+"楼");
        var persons = document.createTextNode("发布人:"+ person.value);
        document.getElementById("person").value="";
        var textnode = document.createTextNode("发布内容:");
        document.getElementById("text").value="";
        li.appendChild(lou);
        li.appendChild(document.createElement("br"));
        li.appendChild(persons);
        li.appendChild(document.createElement("br"));
        li.appendChild(textnode);
        li.appendChild(document.createElement("br"));
        li.appendChild(fabu);
        li.appendChild(time);
        li.appendChild(oA);
        li.appendChild(oB);
        li.appendChild(butt);
        //删除
        oA.onclick = function() {
          ul.removeChild(this.parentNode);
          //删除时更新
          num1++;//删除次数
          document.getElementById("louceng").value=num-num1+"楼";
        };
        //编辑
        oB.onclick = function() {
          fabu.disabled = "";
          butt.style.display = "block";
        }
        //确认更改
        butt.onclick = function() {
          fabu.disabled="disabled";
          butt.style.display = "none";
        }
        //楼层展示
        document.getElementById("louceng").value=num-num1+"楼";
      }
    </script>
  </body>
</html>

总结

以上所述是小编给大家介绍的JS实现留言板功能[楼层效果展示],希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
jQuery调用WebService的实现代码
Jun 19 Javascript
jBox 2.3基于jquery的最新多功能对话框插件 常见使用问题解答
Nov 10 Javascript
jquery教程限制文本框只能输入数字和小数点示例分享
Jan 13 Javascript
基于jQuery 实现bootstrapValidator下的全局验证
Dec 07 Javascript
Easyui的组合框的取值与赋值
Oct 28 Javascript
textarea 在浏览器中固定大小和禁止拖动的实现方法
Dec 03 Javascript
jsonp跨域请求详解
Jul 13 Javascript
jQuery实现锚点向下平滑滚动特效示例
Aug 29 jQuery
JavaScript使用prototype原型实现的封装继承多态示例
Aug 31 Javascript
vue构建动态表单的方法示例
Sep 22 Javascript
JS表单验证插件之数据与逻辑分离操作实例分析【策略模式】
May 01 Javascript
基于javascript原生判断DOM是否加载完毕
Oct 14 Javascript
js判断节假日实例代码
Dec 27 #Javascript
Vue的实例、生命周期与Vue脚手架(vue-cli)实例详解
Dec 27 #Javascript
Angular实现的简单查询天气预报功能示例
Dec 27 #Javascript
Angular实现点击按钮后在上方显示输入内容的方法
Dec 27 #Javascript
Angular实现的日程表功能【可添加及隐藏显示内容】
Dec 27 #Javascript
Vue+SpringBoot开发V部落博客管理平台
Dec 27 #Javascript
简单的Vue异步组件实例Demo
Dec 27 #Javascript
You might like
php基础知识:类与对象(1)
2006/12/13 PHP
PHP simple_html_dom.php+正则 采集文章代码
2009/12/24 PHP
php实现12306火车票余票查询和价格查询(12306火车票查询)
2014/01/14 PHP
php解析json数据实例
2014/08/19 PHP
PHP设计模式之建造者模式定义与用法简单示例
2018/08/13 PHP
简单JS代码压缩器
2006/10/12 Javascript
JavaScript中Math对象使用说明
2008/01/16 Javascript
javascript 有用的脚本函数
2009/05/07 Javascript
网站如何做到完全不需要jQuery也可以满足简单需求
2013/06/27 Javascript
详解vue-cli 脚手架项目-package.json
2017/07/04 Javascript
Vue.js实现开发购物车功能的方法详解
2019/02/22 Javascript
js回文数的4种判断方法示例
2019/06/04 Javascript
layer.open组件获取弹出层页面变量、函数的实例
2019/09/25 Javascript
JavaScript适配器模式原理与用法实例详解
2020/03/09 Javascript
[05:22]DOTA2 2015国际邀请赛中国区预选赛首日TOP10
2015/05/26 DOTA
Python实现3行代码解简单的一元一次方程
2014/08/18 Python
python通过装饰器检查函数参数数据类型的方法
2015/03/13 Python
Python实现高效求解素数代码实例
2015/06/30 Python
Python中asyncore异步模块的用法及实现httpclient的实例
2016/06/28 Python
如何在sae中设置django,让sae的工作环境跟本地python环境一致
2017/11/21 Python
利用Python如何批量更新服务器文件
2018/07/29 Python
python输入整条数据分割存入数组的方法
2018/11/13 Python
修改python plot折线图的坐标轴刻度方法
2018/12/13 Python
使用Python实现跳帧截取视频帧
2019/05/31 Python
如何将PySpark导入Python的放实现(2种)
2020/04/26 Python
python用opencv 图像傅里叶变换
2021/01/04 Python
美国羊皮公司:Overland
2018/01/15 全球购物
Fanatics法国官网:美国体育电商
2019/08/27 全球购物
《囚绿记》教学反思
2014/03/01 职场文书
2014年个人师德工作总结
2014/12/04 职场文书
公司保洁员岗位职责
2015/02/13 职场文书
质量保证书怎么写
2015/02/27 职场文书
Windows10下安装MySQL8
2021/04/06 MySQL
用python画城市轮播地图
2021/05/28 Python
opencv-python图像配准(匹配和叠加)的实现
2021/06/23 Python
CSS中calc(100%-100px)不加空格不生效
2023/05/07 HTML / CSS