【Angular】二级联动:如何从js二级联动,下拉框内容为动态查询

开发者福利!热门AI工具限时免费用 购周边即赠Coding Plan Lite,Claude Code、Cursor等20+工具畅享,效率翻倍! 阅读详情

一、思路

①分别写两个各自独立的下拉框,互不影响;
②在父级下拉框里写一个ng-change方法,当父级下拉框的选中值变化时,调用方法;
③把父级选中的id或值传给子级下拉框,动态查询;

二、代码

1-1 html源码:

<label class="col-lg-1 control-label" for="major">专业</label>
            <div class="col-lg-2">
                <select   class="input-sm form-control" name="id" id="major"
                                          ng-options="option.id as option.name for option in majorList"
                                          ng-model="q.majorId" ng-change="professionChange()">
                </select>
            </div>

            <label class="col-lg-1 control-label" for="position">岗位</label>
            <div class="col-lg-2">
                <select class="input-sm form-control" name="id" id="position"
                        ng-options="option.id as option.name for option in positionList"
                        ng-model="q.positionId">

                </select>
            </div>

1-2 html截图;
这里写图片描述

2-1js代码:

    /*专业初始化初始化:warn 必须初始化具体*/
            $scope.majorList = [
                { id:0 ,name:"1"}
            ];

            /*岗位初始化:position*/
            $scope.positionList = [
                { id:0 ,name:"2"}
            ];

        questionService.getMajorType().then(
            function (res) {
                /*清空*/
                $scope.majorList = [];
                for (var i = 0; i < res.data.length; i++) {
                    /*初始化*/
                    var majorSingleOption= {
                        id:res.data[i].id,
                        name: res.data[i].name
                    };
                    $scope.majorList.push(majorSingleOption);

                }

            }
        );

            /*当下拉选项变化的时候*/
            $scope.professionChange=function () {
                var index=document.getElementById("major").selectedIndex;//获取当前选择项的索引.
                $scope.proChoosedId=document.getElementById("major").options[index].value;//获取当前选择项的值.
                var num = $scope.proChoosedId.replace(/[^0-9]/ig,"");
                questionService.getPositionType({professionId:num}).then(
                    function (res) {
                        $scope.positionList= [];
                        for (var i = 0; i < res.data.length; i++) {
                            /*初始化*/
                            var positionSingleOption = {
                                id:res.data[i].id,
                                name: res.data[i].positionName
                            };
                            $scope.positionList.push(positionSingleOption);
                        }

                    }
                );
            };

2-2js截图

这里写图片描述

三、总结

①获取选中的父级下拉框内的id,通过改id来查询其子选项;
这里写图片描述

var index=document.getElementById("major").selectedIndex;//获取当前选择项的索引.
                $scope.proChoosedId=document.getElementById("major").options[index].value;//获取当前选择项的值.

②从字符串中提取数字(正则):

var num = $scope.proChoosedId.replace(/[^0-9]/ig,"");
实现级联效果的下拉框 - Angular中的实现 Angular中,我们经常需要实现级联效果的下拉框,即一个下拉框的选项会根据另一个下拉框的选择而动态改变。在本文中,我将向您展示如何在Angular中实现这种级联效果的下拉框。首先,我们需要创建两个下拉框组件:父组件和子组件。父组件用于显示第一个下拉框,子组件用于显示第二个下拉框。当父组件的选项改变时,子组件的选项也会相应地改变。在父组件的代码中,我们使用了Angular的双向数据绑定(ngModel)来获取选中的选项。方法中,我们可以执行根据父组件选项改变时的逻辑。在子组件的代码中,我们使用了。 阅读详情

相关推荐

支持手动输入的下拉框组件设计与实现

在现代Web应用开发中,用户交互体验的优化已成为前端设计的核心目标之一。支持手动输入的下拉框(Combobox)融合了文本输入框与选择列表的功能,允许用户从预设选项中选择或直接输入自定义值,显著提升数据录入效率与灵活性。该组件广泛应用于搜索建议、地址填写、标签管理等场景,在电商商品搜索、CRM客户筛选和配置平台参数设置中发挥关键作用,兼顾用户体验与数据准确性,为后续技术实现提供明确需求导向。理想的可输入下拉框应遵循以下四大设计原则:默认情况下,Select2 仅允许从预设选项中选择值。

weixin_31176789的博客 1087

js实现下拉框二级联动

主要为大家详细介绍了js实现下拉框二级联动,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

angular 三级联动demo

关于angular多级联动实现demo

AngularJS实现的select二级联动下拉菜单功能示例

主要介绍了AngularJS实现的select二级联动下拉菜单功能,结合完整实例形式分析了AngularJS实现二级联动菜单的具体操作步骤与相关实现技巧,需要的朋友可以参考下

angular制作下拉框联动

/* 1、了解下拉框联动应该制作的数据格式 * 2、了解ng-options通过track by 设置option的value * 3、scope对象的属性selectList 代表数据格式中的整个数据,即一级业务数组 * 3、ng-model的指令值“selected1”代表数据格式中的一级业务对象,即selectList中的一个对象; * 4、scope对象的属性subSelectList 代表数据格式中的二级业务数组,即sub属性值; * 5、ng-model的指令值“se

lzf的博客 2006

angular实现二级联动

angular实现二级联动的主要思想是通过ng-change事件获取到第一个下拉框的值,再根据第一个下拉框的值筛选出第二个下拉框的值 html //第一个下拉框,onchange事件需要传参 <select theme="bootstrap" ng-model="selected1" ng-options="p.pro for p in provinces2" ng-change="cha...

weixin_45690699的博客 861

CSS3中常用的几种选择器

css中几种常用的选择器 1.通配符 *{ margin:0; padding:0; } 因为浏览器默认有margin和padding 而通配符主要作用就是去掉margin和padding 一般写在css最前 2.id选择器 #first{ color:red; } <div id="first">我是id选择器</div> id选择器 调用css样式时需要用# 不推荐使用i

Web_chicken的博客 9169

antd 下拉框怎么联动_解决Antd 里面的select 选择框联动触发的问题

有两个 select框,且这俩select框是关联的,触发select1,select2里面才会有值。但是现在的问题是这样的:触发select1,触发select2,再触发select1,此时select2里面的值变成了上次一选中的value 值,而不会被清空。解决办法:使用Select 里面的value属性,来进行清空{packagedPaperList.map((item,idx)=>(...

weixin_39742471的博客 592

Js动态生成下拉框

  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 开发工具与关键技术:VS2015和 JavaScript 撰写时间:2019年1月20日 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~...

csh的博客 7694

使用angularJs进行模糊动态查找下拉框内容

动态模糊查找,回车更新下拉列表选项

haoshangguan的博客 1551

绑定下拉框与数据回填

开发工具与关键技术:vs与js 作者:戴怡斌 撰写时间:2019年6月5日 相信大家都知道下拉框是什么,不知道的也用过,当然只是在手机电脑上面用过尤其是在领游戏礼包选哪个区的时候被用的最为频繁,所以还是非常重要的。 大部分下拉框都会和搜索框,表格组合起来,用来排查。 下拉框也可以多个联合使用,排查起来更清楚,更仔细。 Js引用就不是了,先看css代码 一般来说都是先在控制器写好方法再...

weixin_44561520的博客 691

angularjs中的下拉框,以及数据的回显,并且还可以实现下拉框的功能

两种实现方式      一 ,第一种就是使用select来实现下拉框,如下 Java代码   class="input-select" >     "areaId" class="js-input-select-title" ng-change="queryCityByQuYu()">        "--请选择区域--">--请选择区域--        "a

h254532699的博客 1万+

最简单js代码实现select二级联动下拉菜单

本文实例为大家分享了js实现select二级联动下拉菜单,供大家参考,具体内容如下 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD H

Angular JS

angular.js 和以前的js 框架有的区别: 1 传统的前端开发思维: 以jquery 为例,它是以dom 为中心的,是dom 元素的操作,更多的是关注dom 的变化和用户的操作。 2 新一代的前端开发思维 以angular.js 为例,它是以data 为中心的,关心的是数据的变化。 比如如果要实现一个三级联动下拉框: jquery 的实现是:...

weixin_33720956的博客 97

Extjs下拉框扩展

本文主要讲解了下拉框的基础使用和扩展使用.扩展使用本文写了一个动态变化组件类型的示例。 Extjs 下拉框 Extjs下拉框改变类型 下拉框 下拉框生成组件 Extjs下拉框扩展

更好的解决 1297

angular js 分页

一、编写实体类PageResult public class PageResult implements Serializable { private Long total;//总记录数 private List rows;//当前页的结构 public PageResult() { } public PageResult(Long total, List...

diaona1404的博客 186

angular.js的一点理解

最近一直在学习angular.js。不得不说和jquery相比有很大不同,有很多的不同点,之前也用过Knockout.js 但是两者还是有一定的区别的,首先knockout.js是基于Mvvm的,是几乎纯粹的dom 绑定没有一个架构一样的东西。而angular.js 则有dom 绑定还有mvc 架构的支持。一 angular.js 和以前的js 框架有的区别: 1 传统的前...

aojiao7270的博客 293

angularjs~中的下拉框,以及数据的回显,并且还可以实现下拉框的功能

两种实现方式      一 ,第一种就是使用select来实现下拉框,如下 &lt;div class="input-select" &gt; &lt;select ng-model="areaId" class="js-input-select-title" ng-change="queryCityByQuYu()"&gt; &lt;option value=&

stupider0623的博客 933

【经验】angularjs 实现带查找筛选功能的select下拉框

一.背景 对于select的下拉列表,像国家选择这样的功能,全世界那么多国家,一直拉滚动条多辛苦,眼睛也要盯着找,累!so,为优化用户体验,带查找功能的下拉框是非常非常有必要的。都知道jquery里有这样的插件,但我们用的是Angularjs,更希望用双向绑定,指令的方式优雅地解决这个问题。 分析: 目标   在原来的<select ng-optio...

weixin_30933531的博客 903
上一篇: 【Angular】select标签,ng-options标签中,下拉列表动态查询,默认值为空;
下一篇: 【Angular4】No value accessor for form control with name: '***'
陶洲川
博客等级 码龄10年 179粉丝 383原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

陶洲川

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值