十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
今天就跟大家聊聊有关使用Angularjs如何实现下拉框联动,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

第一种联动方式
html
js
$scope.selectDatas = [{
code: 01,
name: "监控安全类",
utils: [
{ code: 0101, name: "遥控门锁" },
{ code: 0102, name: "声光报警器" },
{ code: 0103, name: "摄像头" }
]
},
{
code: 02,
name: "大家电",
utils: [
{ code: 0201, name: "空调" },
{ code: 0202, name: "洗衣机" },
{ code: 0203, name: "洗碗机" }
]
}
]第二种联动方式,这次是根据后台要求,自己写的一个联动,当然没有请求接口,就是单独写个固定值
1.联动的思路
1.首先是选择总类别
2.总类别选择后,会关联出设备
3.设备选择后,会关联出属性
4.属性选择后,会根据属性的不同,关联出不同的项目
2.代码
1)设备类别下拉
html
js
$scope.devices = [
{"category":"大家电"},
{"category":"红外感应"},
{"category":"监控"},
{"category":"灯光"},
]
// 根据大类来获取设备列表
$scope.changeType = function(x){
$log.log(x.category)
//TODO: 真正使用肯定是要用$http来请求设备列表
//暂时测试使用下面的
switch(x.category){
case "大家电":
$scope.yourdevices = [
{"dev":"电视机(mac:32309fsaf)"},
{"dev":"洗衣机(mac:32309fsaf)"},
{"dev":"冰箱(mac:32309dqsq)"},
{"dev":"空调(mac:32309fsaf)"}
];
break;
}
}2)设备下拉
html
js
$scope.changeDev = function (x) {
$log.log(x.dev)
switch (x.dev) {
case '电视机(mac:32309fsaf)':
$scope.params = [
{
'display_name': '开关',
'data_type': 'bool',
'data_range': [ '开','关']
},
{
'display_name': '温度',
'data_type': 'num',
'data_range': [30]
}
]
//此处将json转换成对象,方便下面的属性相关操作,例如“开关”属性,要找去其相关的类型数据和值
var paramsarr = $scope.params;
var paramobj = {
};
paramsarr.forEach(function (v, i) {
paramobj[v.display_name] = v;
})
$scope.paramobjs = paramobj;
}
}3)属性下拉
html
js
//获取数据类型和数据值
$scope.changeParam = function (x) {
var pobj = $scope.paramobjs;
$scope.views = pobj[x];
$scope.type = $scope.views.data_type
$log.log($scope.views)
}4)属性项
html
使用ng-swtch来进行判断显示,若数值类型位bool,则显示单选框,若数值类型位num,则显示位大小比较下拉框和文本框
{{views.data_range}}
看完上述内容,你们对使用Angularjs如何实现下拉框联动有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注创新互联成都做网站行业资讯频道,感谢大家的支持。
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。