用户编辑新建_AngularJS实现
实现思路:
分步骤完成开发,逐渐添加功能:
1.实现输出users对象。
2.实现点击“编辑”按钮,在表单中显示firstname和lastname,并不可修改。
3.实现“新建用户”和“编辑用户”的切换。
4.实现“创建新用户”按钮。
5.实现“验证”部分。
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>无标题文档</title>
<script src="http://apps.bdimg.com/libs/angular.js/1.3.9/angular.min.js"></script>
</head> <body ng-app="myApp" ng-controller="userCtl">
<table>
<tr>
<TD></TD><td>名</td><td>姓</td>
</tr>
<tr ng-repeat="user in users">
<TD><button type="button" ng-click="editUser(user.id)">编辑</button></TD><td>{{user.firstname}}</td><td>{{user.lastname}}</td>
</tr>
</table>
<input type="button" value="创建新用户" ng-click="editUser('new')">
<h3 ng-show="edit">新建用户</h3>
<h3 ng-hide="edit">编辑用户</h3>
<form>
firstname:<input type="text" name="firstnam" ng-model="firstname" ng-disabled="!edit"><br>
lastname :<input type="text" name="lastname" ng-model="lastname" ng-disabled="!edit"><br>
密 码:<input type="password" name="passwd1" ng-model="passwd1"><br>
重 复 密 码:<input type="password" name="passwd2" ng-model="passwd2" ><br>
<button ng-disabled="error || incomplete">提交</button>
</form>
<script>
var app=angular.module("myApp",[]);
app.controller("userCtl",function($scope){
$scope.firstname='';
$scope.lastname='';
$scope.edit=true;
$scope.users=[{id:1,firstname:'john',lastname:'cena'},{id:2,firstname:'jeff',lastname:'chen'},{id:3,firstname:'bill',lastname:'gates'},];
$scope.editUser = function(id){
if(id == 'new'){
$scope.edit=true;
$scope.firstname='';
$scope.lastname=''; } else {
$scope.edit = false;
$scope.firstname=$scope.users[id-1].firstname;
$scope.lastname=$scope.users[id-1].lastname;
$scope.passwd1='';
$scope.passwd2='';
}
}; $scope.error = false;
$scope.incomplete = false;
$scope.$watch("firstname",function(){ $scope.test(); });
$scope.$watch("lastname",function(){ $scope.test(); });
$scope.$watch("passwd1",function(){ $scope.test(); });
$scope.$watch("passwd2",function(){ $scope.test(); });
$scope.test = function(){
if($scope.passwd1 !== $scope.passwd2) {
$scope.error = true;
}
else {
$scope.error = false;
}
$scope.incomplete = false;
//新建用户状态,而且四个属性只要有一个没有值,就是未完成状态
if( $scope.edit && ( !$scope.firstname.length || !$scope.lastname.length || !$scope.passwd1.length || !$scope.passwd2.length )) {
$scope.incomplete = true;
}
};
});
</script>
</body>
</html>
用户编辑新建_AngularJS实现的更多相关文章
- react 项目实战(七)用户编辑与删除
添加操作列 编辑与删除功能都是针对已存在的某一个用户执行的操作,所以在用户列表中需要再加一个“操作”列来展现[编辑]与[删除]这两个按钮. 修改/src/pages/UserList.js文件,添加方 ...
- 加链接太麻烦?使用 linkit 模块提升用户编辑体验
在制作网站内容时,适当地添加链接会非常用利于网站内容的SEO.加入链接的文章可以让访客了解到更多相关内容,从而提升文章的质量.被链接到的内容也能因此获得更多的访问和关注.只不过,在内容编辑时添加链接却 ...
- Confluence 6 允许其他用户编辑站点欢迎消息
你可以通过使用 Include Page 宏从你站点其他页面中包含内容,而允许其他不是 Confluence 管理员的用户编辑站点欢迎消息.使用这种方式能够避免直接对模板文件中的内容进行编辑. 从站点 ...
- 数据库实例: STOREBOOK > 用户 > 编辑 用户: SYSTEM
ylbtech-Oracle:数据库实例: STOREBOOK > 用户 > 编辑 用户: SYSTEM 编辑 用户: SYSTEM 1. 一般信息返回顶部 1.1, 1.2, 2 ...
- 数据库实例: STOREBOOK > 用户 > 编辑 用户: SYSMAN
ylbtech-Oracle:数据库实例: STOREBOOK > 用户 > 编辑 用户: SYSMAN 编辑 用户: SYSMAN 1. 一般信息返回顶部 1.1, 1.2, ...
- 数据库实例: STOREBOOK > 用户 > 编辑 用户: SYS
ylbtech-Oracle:数据库实例: 数据库实例: STOREBOOK > 用户 > 编辑 用户: SYS 编辑 用户: SYS 1. 一般信息返回顶部 1.1, 1.2, ...
- 数据库实例: STOREBOOK > 用户 > 编辑 用户: PUBLIC
ylbtech-Oracle:数据库实例: STOREBOOK > 用户 > 编辑 用户: PUBLIC 编辑 用户: PUBLIC 1. 一般信息返回顶部 1.1, 1.2, 2 ...
- 数据库实例: STOREBOOK > 用户 > 编辑 用户: MGMT_VIEW
ylbtech-Oracle:数据库实例: STOREBOOK > 用户 > 编辑 用户: MGMT_VIEW 编辑 用户: MGMT_VIEW 1. 一般信息返回顶部 1.1, ...
- 数据库实例: STOREBOOK > 用户 > 编辑 用户: DBSNMP
ylbtech-Oracle:数据库实例: STOREBOOK > 用户 > 编辑 用户: DBSNMP 编辑 用户: DBSNMP 1. 一般信息返回顶部 1.1, 1.2, 2 ...
随机推荐
- .NET的语法优化
1.多参数 判断 条件 //判断 var fileKey = new { DateStart = search.DateStart.IsNull(), //关开始时间 DateEnd = search ...
- Object-C 基础笔记1--杂识
一,常量 1, 常量字符串永远不会release; 2,使用常量字符串初始化另一个字符串,这两个字符串相等. 3,相同内容的常量地址值相同. 二, @class 声明一个类,一般是在.h文件中使用,不 ...
- C#指针转换
下表显示了预定义的隐式指针转换. 隐式转换可能在多种情形下发生,包括调用方法时和在赋值语句中. 隐式指针转换 From To 任何指针类型 void* null 任何指针类型 显式指针转换 ...
- Unity3d Web Player 与server端联网配置
针对Unity3d Web Player 的server端联网配置写一随笔咯. 以SmartFoxServer2X官方的Unity3d Example ”tris“为例,部署好服务器之后,在Unit ...
- Magento请求分发与控制器
Magento请求分发与控制器 Magento使用的是MVC结构,模型-试图-控制器结构,这样更好的实现显示逻辑和数据,业务逻辑的分离,更好的适合开发! 下面为传统的mvc结构 URL请求被一个PHP ...
- HDU 1003 Max Sum(AC代码)
#include <stdio.h> int main(){ int i,t,j,n,x; int start,end,temp,max,sum; scanf("%d" ...
- Maven打包可执行Jar包方式
第一步:pom.xm中的build标签下加入maven插件配置,打包生成可执行jar包方式Maven中的打包方式更换为 <packaging>jar</packaging> b ...
- Java中的DatagramPacket与DatagramSocket的初步(转)
1.基本概念: a.DatagramPacket与DatagramSocket位于java.net包中 b.DatagramPacket表示存放数据的数据报,DatagramSocket表示接受或发送 ...
- ajax 异步调用把返回值赋给一个全局变量的用法,最主要的就是把async属性改为 false,
<script> $(document).ready(function () { <% string dqsj = System.DateTime.Now.ToString(&quo ...
- 阅读《构建之法》第八、九、十章有感和Sprint总结
1.阅读<构建之法>读后感 第八章:需求分析 需求分析,我觉得需求分析挺重要的,一个需求分析是指对要解决的问题进行详细的分析,弄清楚问题的要求,包括需要输入什么数据,要得到什么结果,最后应 ...