ngOptions
ngOptions
select as
select as label for value in array
<select ng-model="myColor" ng-options="color.shade as color.name for color in colors"></select>

track by

参考:
http://www.th7.cn/web/js/201511/133669.shtml
https://docs.angularjs.org/api/ng/directive/ngOptions
ngOptions设置初始值
angularjs在进行option值匹配的时候使用的===,所以类型必须一致,string还是number。除了给model设定初始值之外还可以使用ng-init指令完成
前面碰到一个坑,怎么都无法理解为什么option的值总是不能被设定,明明是有在options列表中的。在测试一个input的初始值之后知道一定是匹配的问题,类型转换之后搞定了。
//preset the project id
if ($stateParams.project_id) {
console.log('$stateParams.project_id: ' + $stateParams.project_id);
if (!$scope.task) $scope.task = {};
// 类型必须匹配,否则无法初始化值
$scope.task.project_id = parseInt($stateParams.project_id);
}
<div class="form-group col-md-6">
<label for="password">
选择项目
</label>
<select required class="form-control" ng-model="task.project_id" ng-options="pro.project.id as pro.project.name for pro in projectList" name="project">
</select>
<span class="error" ng-show="newTaskForm.$submitted && newTaskForm.project.$error.required">*请选择项目</span>
</div>
重置选项
ng的select选择之后默认没办法清空的,我们可以在数据源中添加一个"ALL","不限","所有"的option当然是可以达到目的,但其实angular本身算是提供了这样一个功能,只需要html中添加一个value=""的option就可以了,如果选中它就会delete掉相应的ngModel绑定的属性,完美重置
<select class="form-control" ng-model="search.status_id" ng-options="prostat.name for prostat in search.selectedProject.status_list">
<option value="">All</option>
</select>

ngOptions的更多相关文章
- AngularJS select中ngOptions用法详解
AngularJS select中ngOptions用法详解 一.用法 ngOption针对不同类型的数据源有不同的用法,主要体现在数组和对象上. 数组: label for value in a ...
- 如何使用一个对象而非数组元素为ng-options初始化
a,是引用,而b是一个和a内容相同的另一个对象, 因此不能通过b直接赋值.如果要这样用,就用 track by xxx.id ,它的作用是通过id(唯一的)去ng-options做一次检索匹配
- ng-repeat && ng-options的故事
ng-repeat && ng-options的故事 1. <select class="input-small" ng-model="newH ...
- AngularJS之ng-options的best practise
废话不多说,直接上代码. function MySelectCtrl($scope) { $scope.Model = [ { id: 10002, MainCategory: '男', Produc ...
- 为Angularjs ngOptions加上index解决方案
今天在Angularjs交流群中有位童学问道如何为Angular select的ngOptions像Angularjs的ngRepeat一样加上一个索引$index. 其实对于这个问题来说Angula ...
- 下拉列表select显示ng-options
js中如何处理: it-equipment-list-maintenance-create-controller.js 'use strict'; myApp.controller( 'itEquip ...
- angularjs: ng-select和ng-options
angular.js有一个很强大的指令: ng-select 它可以帮助你通过数据模型来创建select元素.它很好的支持了select标签的语法,但是却有点坑. 假设有如下一段json数据: { & ...
- angularjs ng-select ng-options 默认选中项.
<!DOCTYPE html> <html ng-app="myApp"> <head> <meta charset="utf- ...
- angular select中ng-options使用
function selectCtrl($scope) { $scope.selected = ''; $scope.model = [{ id: 10001, mainCategory: '男', ...
随机推荐
- 天气预报API(六):中国气象频道、腾讯天气--“新编码”接口的测试
说明 本文所有测试均以青岛为例. 本文所列接口城市代码(cityid)参数都使用的 "新编码": 全国城市代码列表(新) 本文接口均不是官方接口,仅供测试使用! 腾讯天气 空气质量 ...
- python数据挖掘领域工具包
原文:http://qxde01.blog.163.com/blog/static/67335744201368101922991/ Python在科学计算领域,有两个重要的扩展模块:Numpy和Sc ...
- [UCSD白板题] Primitive Calculator
Problem Introduction You are given a primitive calculator that can perform the following three opera ...
- 【转】Backbone使用总结
转自 http://www.pchou.info/javascript/2014/06/26/backbone-summary-01.html 开始在项目中大规模使用backbone,一路磕磕碰碰, ...
- "巴卡斯杯" 中国大学生程序设计竞赛 - 女生专场
Combine String #include<cstdio> #include<cstring> #include<iostream> #include<a ...
- css小技巧
每逢大的灾难的时候,很多网站变成了灰色,如何让网站快速变灰?css代码是很简单的,用的是css的filter功能. html { filter: grayscale(100%);//IE浏览器 -we ...
- Python成长笔记 - 基础篇 (十一)----RabbitMQ、Redis 、线程queue
本节内容: 1.RabbitMQ 消息队列 2.Redis 3.Mysql PY 中的线程queue(threading Queue):用于多个线程之间进行数据交换,不能在进程间进行通信 进程qu ...
- 润乾报表之制作List列表
一般情况洗啊,如果sql查到多条数据,使用表格扩展的方式在一张表格里面(横展.纵展):目前的需求是,以报表为单位,做成List.例如,如果查出3条数据,预览的时候,要有3张格式相同内容有异的报表.如图 ...
- 用户图形界面(GUI)学习笔记(一)——Swing与AWT
一.Swing与AWT 对象窗口工具箱(Abstact Window Toolkit,AWT),是JAVA1.0刚出现的时候,包含的一个GUI设计类库.它将处理用户界面元素的任务委派给每个目标平台(W ...
- 二进制求最大公约数&&输出二进制
Divided Land Time Limit: 8000/4000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) Tot ...