今天使用angularJs写了一个留言板,简单的享受了下angular处理数据的双向绑定的方便;注释已经都写到行间了

<!DOCTYPE html>
<html lang="en" ng-app="text">
<head>
<meta charset="UTF-8">
<title>Title</title>
<link rel="stylesheet" href="base.css">
<style>
.main{
width: 600px;
height: 250px;
background:#ccc;
margin: auto;
padding:10px;
}
.main_title{
width: 100px;
height: 20px;
font:20px/20px '微软雅黑';
margin:5px auto;
color:aqua;
}
input,textarea{
background:#fff;
}
#sub{
width: 40px;
height: 20px;
background:skyblue;
cursor:pointer;
}
.none_mes{
width: 620px;
height: 40px;
background:rgba(,,,0.8);
text-align:center;
font:20px/40px '微软雅黑';
margin: auto;
}
.message{
width: 600px;
height: 100px;
background:rgba(,,,0.8);
margin: auto;
padding:10px;
}
.message .name,.message .job,.message .mes{
height: 20px;
width: 620px;
}
.message .del{
width: 40px;
height: 20px;
background:orangered;
text-align:center;
line-height:20px;
cursor:pointer;
}
</style>
<script src="angular.js"></script>
<script>
var app=angular.module('text',[]);
app.controller('add_msg',function($scope){
//先清空留言填写处的信息
$scope.data=[];
$scope.username='';
$scope.job='';
$scope.mes='';
//点击确定添加内容 这里只是添加了一个add的方法,在点击确定按钮的时候添加调用事件ng-click模型
$scope.add=function(){
//进行判断,当留言内容齐全的时候允许添加,不全的时候提示用户
if($scope.username && $scope.job && $scope.mes){ $scope.data.push({
username:$scope.username,
job:$scope.job,
mes:$scope.mes
});
//将信息存入到localstorage中
localStorage.username=$scope.username;
localStorage.job=$scope.job;
localStorage.mes=$scope.mes;
//获取到内容后再次清空留言填写处的信息
$scope.username='';
$scope.job='';
$scope.mes='';
}else{
alert('请填写全部内容');
} };
//点击删除的时候,因为data为数组,删除当前数组这一项就可以,$index为索引,
$scope.delete=function(index){
$scope.data.splice(index,);
localStorage.clear();
};
//增加键盘回车提交功能,当全部输入后可以在最后一个输入位置按回车提交
$scope.keyup=function(){
if(ev.keyCode==){
//当回车的时候条用add函数
this.add();
}
};
});
</script>
</head>
<body style="color:#000" ng-controller="add_msg">
<div class="main" >
<div class="main_title">留言板</div>
<div>
<span class="name">姓名</span><input type="text" name="" ng-model="username">
<span class="name">所属公司</span><input type="text" name="" ng-model="job">
<div class="name">留言内容</div>
<textarea name="" cols="" rows="" ng-model="mes" ng.keyup="keyup($event)"></textarea><br />
<input type="button" value="确定" id="sub" ng-click="add()">
</div>
</div>
<div class="none_mes" ng-show="data.length==0">暂无留言</div>
<!--item in data angular里的循环样式 在需要内容的地方加相应的值。-->
<div class="message" ng-repeat="item in data">
<ul>
<li class="name">姓名:{{item.username}}</li>
<li class="job">公司:{{item.job}}</li>
<li class="mes">留言内容:{{item.mes}}</li>
<li class="del" ng-click="delete($index)">删除</li>
</ul>
</div>
</body>
</html>

angular留言板的更多相关文章

  1. angular实现动态的留言板案例

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  2. AngularJs学习笔记(制作留言板)

    原文地址:http://www.jmingzi.cn/?post=13 初学Anjularjs两天了,一边学一边写的留言板,只有一级回复嵌套.演示地址 这里总结一下学习的过程和笔记.另外,看看这篇文章 ...

  3. dd——留言板再加验证码功能

    1.找到后台-核心-频道模型-自定义表单 2.然后点击增加新的自定义表单 diyid 这个,不管他,默认就好 自定义表单名称 这个的话,比如你要加个留言板还是投诉建议?写上去呗 数据表  这个不要碰, ...

  4. asp.net留言板项目源代码下载

    HoverTree是一个asp.net开源项目,实现了留言板功能. 前台体验网址:http://hovertree.com/guestbook/ 后台请下载源代码安装. 默认用户名:keleyi 默认 ...

  5. html的留言板制作(js)

    这次留言板运用到了最基础的localstorage的本地存储,展现的效果主要有: 1.编写留言2.留言前可以编辑自己的留言昵称.不足之处: 1.未能做出我喜欢的类似于网易的叠楼功能. 2.未能显示评论 ...

  6. 11月8日PHP练习《留言板》

    一.要求 二.示例页面 三.网页代码及网页显示 1.denglu.php  登录页面 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Tran ...

  7. [课程设计]Scrum 3.7 多鱼点餐系统开发进度(留言板选择方案)

    Scrum 3.7 多鱼点餐系统开发进度(留言板选择方案) 1.团队名称:重案组 2.团队目标:长期经营,积累客户充分准备,伺机而行 3.团队口号:矢志不渝,追求完美 4.团队选题:餐厅到店点餐系统W ...

  8. [课程设计]Scrum 3.6 多鱼点餐系统开发进度(用户测试反馈页面构思&留言板设计)

    Scrum 3.6 多鱼点餐系统开发进度(用户测试反馈页面构思&留言板设计) 1.团队名称:重案组 2.团队目标:长期经营,积累客户充分准备,伺机而行 3.团队口号:矢志不渝,追求完美 4.团 ...

  9. 用 Express4 写一个简单的留言板

    Knowledge Dependence:阅读文本前,你需要熟悉 Node.js 编程.Express 以及相关工具和常用中间件的使用. Node.js 以其单线程异步非阻塞的特点,越来越被广大的 W ...

随机推荐

  1. 用TypeScript开发了一个网页游戏引擎,开放源代码

    最开始学习电脑编程的原动力之一就是想自己编写游戏,一方面很好奇这些游戏是怎么做出来的,另一方面觉得有些地方设计的不合理,希望电脑游戏既能让人玩的有趣,又不浪费时间. 学校五年,毕业十年,学用了十多种编 ...

  2. Sharepoint学习笔记—习题系列--70-576习题解析 -(Q1-Q3)

    这里我把从网上搜集到的针对Sharepoint 70-576的有关练习进行系统的解析,整理成一个系列, 分期.分批次共享出来,供大家研究. 70-573考试注重的是"知道"相关知识 ...

  3. bootstrap的一些资源

    http://www.cnblogs.com/landeanfen/p/5461849.html 总结了时间,加载,自动增加图片选择,等bootstap控件 http://www.cnblogs.co ...

  4. Android--ListView下拉刷新

    整理了下以前写的小项目,ListView的下拉刷新,虽然小但还是想纪念下..适合新手看,大神略过... 效果图:     代码:  实体类 package com.example.listviewre ...

  5. iOS xcode使用断点追踪后,无法nslog,无法po对应的值 方法小结

    今天使用断点追踪后,发现无法正常nslog,使用po也无法打印出对应的值,进入断点显示的值都为nil,网上查了一下,我总结出了以下几个可行方法: 法一:项目根目录->PROGECT->Bu ...

  6. UITableView相关知识点

    //*****UITableView相关知识点*****// 1 #import "ViewController.h" // step1 要实现UITableViewDataSou ...

  7. 7、软件质量工程师要阅读的书籍 - IT软件人员书籍系列文章

    软件质量工程师在项目组中的作用不是那么明显,但是它是软件质量的重要度量标准人员.有句话说:软件质量是生产出来的,不是开发出来的.通过软件质量审查,能够对软件项目的代码等质量进行衡量,最起码要能够对代码 ...

  8. 使用虚拟信用卡认证openshift铜牌计划

    "铜牌计划(bronze)"是OpenShift推出的一项免费计划,这个计划能为你提供更多的免费便利,主要就是可以自己绑域名加SSL证书和应用即使24小时没人访问也不关机了.说这个 ...

  9. 简述java序列化

      1. 什么是Java对象序列化     Java平台允许我们在内存中创建可复用的Java对象,但一般情况下,只有当JVM处于运行时,这些对象才可能存在,即,这些对象的生命周期不会比JVM的生命周期 ...

  10. java 生成和解析二维码

    public class QRCode { /** * 解析二维码(QRCode) * @param imgPath * @return */ public static String decoder ...