博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
AngularJs创建省,市,区的3级列表
阅读量:6756 次
发布时间:2019-06-26

本文共 2789 字,大约阅读时间需要 9 分钟。

在AnguarJs中,下拉列表别使用ng-options来实现。

<!DOCTYPE HTML>

<html>

<head>

<meta charset="UTF-8">
<title>angularjs select 三级联动</title>

<script src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js"></script>

<style type="text/css">

label {
padding: 5px 10px;
border: 1px solid #fff;
}
.error {
border-color: #f00;
}
</style>

</head>

<body>

<div ng-controller='cityCtrl'>

省份:

<select ng-model="selected" ng-options="s.name for s in list" ng-change="c()">
<option value="">--请选择--</option>
</select>

<select ng-model="selected2" ng-options="sh.name for sh in selected.child" ng-change="c2()">

<option value="">--请选择--</option>
</select>

<label ng-show="selected2.child.length" ng-class="{error: error.area}">

县级/区域:
<select ng-model="selected3" ng-options="x.value for x in selected2.child" ng-change="c3()" >
<option value="">--请选择--</option>
</select>
</label>
<br /> {
{selected.name}} {
{selected2.name}} {
{selected3.value}}

</div>

<script type="text/javascript">

var app = angular.module('app', []);

app.controller('cityCtrl', ['$scope', '$http', function($scope, $http) {

$scope.error = {};
$scope.list = [];
$http.get('list.json').success(function(data) {
$scope.list = data;
});

$scope.c = function() {

$scope.error.area = false;

$scope.selected2 = "";
$scope.selected3 = "";
};

$scope.c2 = function() {

$scope.error.area = false;

$scope.selected3 = "";
};

$scope.c3 = function() {

$scope.error.area = false;
};

}]);

angular.bootstrap(document, ['app']);</script>

</body>

</html>

 

新建list.json文件,来保存省,市,区的值,供给控制器调用,在界面上显示。

[

{
"id": 0,
"name": "北京",
"code": "001",
"child": [
{
"id": 0,
"name": "东城区",
"child": []
}, {
"id": 1,
"name": "西城区",
"child": []
}, {
"id": 2,
"name": "崇文区",
"child": []
}, {
"id": 3,
"name": "宣武区",
"child": []
}, {
"id": 4,
"name": "朝阳区",
"child": []
}, {
"id": 5,
"name": "丰台区",
"child": []
}
]
}, {
"id": 1,
"name": "广西",
"code": "002",
"child": [
{
"id": 0,
"name": "南宁",
"child": [
{
"value": "兴宁区"
}, {
"value": "青秀区"
}, {
"value": "江南区"
}, {
"value": "西乡塘区"
}, {
"value": "良庆区"
}, {
"value": "邕宁区"
}, {
"value": "武鸣县"
}, {
"value": "隆安县"
}
]
}, {
"id": 1,
"name": "柳州",
"child": [
{
"value": "城中区"
}, {
"value": "鱼峰区"
}, {
"value": "柳南区"
}, {
"value": "柳北区"
}
]
}, {
"id": 2,
"name": "桂林",
"child": [
{
"value": "秀峰区"
}, {
"value": "叠彩区"
}, {
"value": "象山区"
}
]
}, {
"id": 3,
"name": "百色",
"child": [
{
"value": "右江区"
}, {
"value": "平果县"
}, {
"value": "田阳县"
}, {
"value": "田东县"
}, {
"value": "德保县"
}
]
}
]
}, {
"id": 2,
"name": "广东",
"code": "003",
"child": [
{
"id": 0,
"name": "广州",
"child": [
{
"value": "天河区"
}, {
"value": "白云区"
}, {
"value": "黄埔区"
}
]
}, {
"id": 1,
"name": "深圳",
"child": [
{
"value": "宝安区"
}, {
"value": "南山区"
}, {
"value": "福田区"
}
]
}, {
"id": 2,
"name": "珠海",
"child": []
}
]
}
]

转载于:https://www.cnblogs.com/JSWBK/p/5611256.html

你可能感兴趣的文章
/MT、/MD编译选项,以及可能引起在不同堆中申请、释放内存的问题
查看>>
基于SGIP协议编写短信网关接口
查看>>
NSCharacterSet 去除NSString中的空格
查看>>
ubuntu server 使用parted分区
查看>>
自定义网页日历
查看>>
solr实现满足指定距离范围条件的搜索
查看>>
ubuntu vsftp安装
查看>>
[转载]Web前端研发工程师编程能力飞升之路
查看>>
Redis
查看>>
XINS 3.0 正式版发布,远程 API 调用规范
查看>>
sqlserver 2005 64bit express
查看>>
(转)Oracle中For和while及一些应用
查看>>
动态链接导入库与静态链接库
查看>>
jQuery基础及选择器
查看>>
DragonFly BSD 3.2 发布
查看>>
软件开发中常见的十大系统瓶颈(转)
查看>>
Mozilla 发布 Popcorn Maker,在线创作视频
查看>>
C#中为什么需要装箱拆箱操作?
查看>>
PHP类中一般方法与静态方法的疑问
查看>>
[转]PHP花括号变量
查看>>