参考:官方文档zhx1991

select 无默认选择一项

<select name="" id="" class="form-control" ng-options="item.id for item in optData" ng-model="selected">
<!-- item.id是label 显示出来的 item是value 选中的数据object -->
<option value="">---请选择---</option>
</select>

select 有默认选择一项

  $scope.selected=$scope.optData[1];

select其他

//字符拼接
<select name="" id="" class="form-control"
ng-options="(item.id+' '+item.ProductName) for item in optData"
ng-model="selected"></select>
//分组 label group by groupName for value in Array
<select name="" id="" class="form-control"
ng-model="selected"
ng-options="item.id group by item.MainCategory for item in optData">
</select>
//下面selected的值为optData的id select as label for value in Array
<select name="" id="" class="form-control"
ng-model="selected"
ng-options="item.id as item.ProductName for item in optData"></select>
//多级列表
<select name="" id="" class="form-control" ng-options="obj.name for obj in people" ng-model="selectedPerson">
</select>
<select name="" id="" class="form-control" ng-model="selectedGenre">
<option ng-repeat="label in people[selectedPerson.id].interest">{{label}}</option>
</select>

ng-options的内容:

  • for array data sources:

    • labelforvalueinarray
    • selectaslabelforvalueinarray
    • labelgroup bygroupforvalueinarray
    • labeldisable whendisableforvalueinarray
    • labelgroup bygroupforvalueinarraytrack bytrackexpr
    • labeldisable whendisableforvalueinarraytrack bytrackexpr
    • labelforvalueinarray | orderBy:orderexprtrack bytrackexpr(for including a filter with track by)
  • for object data sources:
    • labelfor (key,value) inobject
    • selectaslabelfor (key,value) inobject
    • labelgroup bygroupfor (key,value) inobject
    • labeldisable whendisablefor (key,value) inobject
    • selectaslabelgroup bygroupfor(key,value) inobject
    • selectaslabeldisable whendisablefor(key,value) inobject

自己的代码:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<link rel="stylesheet" href="http://cdn.static.runoob.com/libs/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="http://cdn.static.runoob.com/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="http://cdn.static.runoob.com/libs/angular.js/1.4.6/angular.min.js"></script>
<script src="http://cdn.bootcss.com/angular-ui-bootstrap/2.2.0/ui-bootstrap-tpls.js"></script>
<script src="https://cdn.bootcss.com/angular-i18n/1.5.8/angular-locale_zh-cn.js"></script>
<script>
angular.module('m1',['ui.bootstrap'])
.controller('ngselect',function($scope){
$scope.optData=[
{id:10001,MainCategory:'男',ProductName:'水洗T桖',ProductColor:'白'},
{id:10002,MainCategory:'男',ProductName:'干洗毛衣',ProductColor:'黑'},
{id:10003,MainCategory:'女',ProductName:'干洗毛衣',ProductColor:'篮'},
{id:10004,MainCategory:'女',ProductName:'水洗T桖',ProductColor:'红'}
]
})
.controller('ngselect1',function($scope){
$scope.optData=[
{id:10001,MainCategory:'男',ProductName:'水洗T桖',ProductColor:'白'},
{id:10002,MainCategory:'男',ProductName:'干洗毛衣',ProductColor:'黑'},
{id:10003,MainCategory:'女',ProductName:'干洗毛衣',ProductColor:'篮'},
{id:10004,MainCategory:'女',ProductName:'水洗T桖',ProductColor:'红'}
];
$scope.selected=$scope.optData[1];
})
.controller('ngselect2',function($scope){
$scope.optData=[
{id:10001,MainCategory:'男',ProductName:'水洗T桖',ProductColor:'白'},
{id:10002,MainCategory:'男',ProductName:'干洗毛衣',ProductColor:'黑'},
{id:10003,MainCategory:'女',ProductName:'干洗毛衣',ProductColor:'篮'},
{id:10004,MainCategory:'女',ProductName:'水洗T桖',ProductColor:'红'}
];
$scope.selected=$scope.optData[1].id;
})
.controller('ngselect3',function($scope){
$scope.people = [
{
id: 0,
name: '张三',
interest: [
'爬山',
'游泳',
'旅游',
'美食'
]
},
{
id: 1,
name: '李四',
interest: [
'音乐',
'美食',
'Coffee',
'看书'
]
},
{
id: 2,
name: '王五',
interest: [
'音乐',
'电影',
'中国好声音',
'爸爸去哪了',
'非常静距离'
]
},
{
id: 3,
name: '小白',
interest: [
'游泳',
'游戏',
'宅家里'
]
}
]; })
</script>
</head>
<body ng-app="m1">
<div class="container">
<h1>下拉列表</h1>
<div ng-controller="ngselect">
<h4>无默认选择 label for value in array</h4>
<div class="col-xs-6">
<select name="" id="" class="form-control" ng-options="item.id for item in optData" ng-model="selected">
<!-- item.id是label 显示出来的 item是value 选中的数据object -->
<option value="">---请选择---</option>
</select>
</div>
<div class="col-xs-6">
<input type="text" class="form-control" value="{{selected.id+'--'+selected.ProductName+'--'+selected.MainCategory}}" >
</div>
<p class="well">添加一个'option'</p>
</div>
<div ng-controller="ngselect1">
<h4>默认选择一项</h4>
<div class="col-xs-6"><select name="" id="" class="form-control" ng-options="item.id for item in optData" ng-model="selected"></select></div>
<div class="col-xs-6"><select name="" id="" class="form-control" ng-options="(item.id+' '+item.ProductName) for item in optData" ng-model="selected"></select></div> <div class="col-xs-6">
<select name="" id="" class="form-control" ng-model="selected" ng-options="item.id group by item.MainCategory for item in optData"></select>
</div> </div>
<div ng-controller="ngselect2">
<div class="col-xs-6">
<select name="" id="" class="form-control" ng-model="selected" ng-options="item.id as item.ProductName for item in optData"></select>
<input type="text" ng-model="selected">
</div>
</div>
<div ng-controller="ngselect3">
<div class="col-xs-3">
<select name="" id="" class="form-control" ng-options="obj.name for obj in people" ng-model="selectedPerson">
</select>
</div>
<div class="col-xs-3">
<select name="" id="" class="form-control" ng-model="selectedGenre">
<option ng-repeat="label in people[selectedPerson.id].interest">{{label}}</option>
</select>
</div>
</div>
</div>
</body>
</html>

  

ng-options的使用的更多相关文章

  1. jquery photoClip支持手机端,PC端 本地裁剪图片后上传插件

    支持手机,PC最好的是jquery photoClip插件,下载地址&示例:https://github.com/topoadmin/photoClip demo.html 代码: <! ...

  2. Flume NG Getting Started(Flume NG 新手入门指南)

    Flume NG Getting Started(Flume NG 新手入门指南)翻译 新手入门 Flume NG是什么? 有什么改变? 获得Flume NG 从源码构建 配置 flume-ng全局选 ...

  3. Andrew NG 机器学习编程作业4 Octave

    问题描述:利用BP神经网络对识别阿拉伯数字(0-9) 训练数据集(training set)如下:一共有5000个训练实例(training instance),每个训练实例是一个400维特征的列向量 ...

  4. Flume NG 配置详解(转)

    原文链接:[转]Flume NG 配置详解 (说明,名词对应解释 源-Source,接收器-Sink,通道-Channel) 配置 设置代理 Flume代理配置存储在本地配置文件.这是一个文本文件格式 ...

  5. 斯坦福大学机器学习(Andrew Ng@2014)--自学笔记

    今天学习Andrew NG老师<机器学习>之6 - 6 - Advanced Optimization,做笔记如下: 用fminunc函数求代价函数最小值,分两步: 1.自定义代价函数 f ...

  6. 【原】Coursera—Andrew Ng机器学习—编程作业 Programming Exercise 4—反向传播神经网络

    课程笔记 Coursera—Andrew Ng机器学习—课程笔记 Lecture 9_Neural Networks learning 作业说明 Exercise 4,Week 5,实现反向传播 ba ...

  7. (原创)Stanford Machine Learning (by Andrew NG) --- (week 4) Neural Networks Representation

    Andrew NG的Machine learning课程地址为:https://www.coursera.org/course/ml 神经网络一直被认为是比较难懂的问题,NG将神经网络部分的课程分为了 ...

  8. Andrew Ng 的 Machine Learning 课程学习 (week4) Multi-class Classification and Neural Networks

    这学期一直在跟进 Coursera上的 Machina Learning 公开课, 老师Andrew Ng是coursera的创始人之一,Machine Learning方面的大牛.这门课程对想要了解 ...

  9. [C2P2] Andrew Ng - Machine Learning

    ##Linear Regression with One Variable Linear regression predicts a real-valued output based on an in ...

  10. 在库中使用schematics——ng add与ng update

    起步 创建一个angular库 ng new demo --create-application=false ng g library my-lib 可见如下目录结构 ├── node_modules ...

随机推荐

  1. python的eval函数

    eval函数介绍:将字符串str当成有效的表达式来求值并返回计算结果.语法: eval(source[, globals[, locals]]) -> value参数: source:一个Pyt ...

  2. web前端笔记整理一---HTML

    一 HTML标签1 页面及标记 1 HTML 文件结构 拓展名 .html或者.htm <!DOCTYPE html>// 声明 <html> html 主体 <head ...

  3. Spring详解(一)------概述

    本系列教程我们将对 Spring 进行详解的介绍,相信你在看完后一定能够有所收获. 1.什么是 Spring ? Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开 ...

  4. 用PyCharm执行测试成功但无法生成HTMLTestRunner报告

    问题:代码写的没问题,执行也成功了,但就是无法生成HTMLTestRunner的报告 其实这是编辑器搞得鬼,编辑器为了方便用户执行测试,都有一项功能,可以用编辑器来调用unittest或者nose来执 ...

  5. HandlerThread实现数字时钟

    1.描述 刚看完Android多线程编程,对HandlerThread比较感兴趣,趁热巩固练习,实现一个了数字时钟,希望对学习HandlerThread有所帮助.如下: 启动一个HandlerThre ...

  6. c89和c99中/运算符和%运算符为负数时的区别

    运算式 -8 / 5 = -1.6,在C89中取值为 -1 或 -2,C99的出现,CPU对除法的结果向零取整,上述运算式结果为 -1. 在C89和C99中都要确保 (a / b) * b + a % ...

  7. Redis在java中的使用

    1.首先安装Redis环境.可以在Windows.linux.别的服务器上搭建Redis环境 2.在java工程中导入必须的jar包 如maven上导入两个jar] <!-- Redis必须包 ...

  8. Java 得到磁盘以及内存信息

    详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt217 1.得到磁盘信息 File[] files = File. listR ...

  9. mha 复制检查报错“There is no alive server. We can't do failover”

    安装mha所参考的文章: http://linzhijian.blog.51cto.com/1047212/1906434 http://www.cnblogs.com/xiaoboluo768/p/ ...

  10. YYHS-挑战nbc

    题目描述 Abwad是一名有志向的优秀OI少年.遗憾的是,由于高能宇宙射线的影响,他不幸在NOI中滚粗.不过,Abwad才高一,还有许许多多的机会.在长时间的刻苦学习之后,他实力大增,并企图撼动OI界 ...