静态下拉列表

修改 type_template.html  引入JS

<!-- slect2插件-->
<link rel="stylesheet" href="../plugins/select2/select2.css" />
<link rel="stylesheet" href="../plugins/select2/select2-bootstrap.css" />
<script src="../plugins/select2/select2.min.js" type="text/javascript"></script> <script src="../plugins/angularjs/angular.min.js"></script>
<script src="../js/base_pagination.js"></script>
<!-- 导入select2-angula-->
<script src="../js/angular-select2.js"></script>
<script src="../plugins/angularjs/pagination.js"></script>
<link rel="stylesheet" href="../plugins/angularjs/pagination.css"> <script src="../js/service/typeTemplateService.js"></script>
<script src="../js/controller/baseController.js"></script>
<script src="../js/service/brandService.js"></script>
<script src="../js/controller/typeTemplateController.js"></script>

注意:base_pagination.js一定要在angular-select2.js之前导入,不然报app not define!

修改typeTemplateController.js  ,定义品牌列表数据

$scope.brandList={data:[{id:,text:'联想'},{id:,text:'华为'},{id:,text:'小米'}]};//品牌列表

(3)在type_template.html 用select2组件实现多选下拉框

<input select2  select2-model="entity.brandIds" config="brandList" multiple placeholder="选择品牌(可多选)" type="text"/>  

multiple 表示可多选

Config用于配置数据来源

select2-model用于指定用户选择后提交的变量

最终实现效果如下:

动态下拉列表

1:从后端获取数据支撑

我们现在让这个下拉列表的数据从数据库中提取,修改后端代码获得数据(此处只展示Controller)

@RequestMapping("/selectOptionList")
public List<Map> selectOptionList(){
return brandService.selectOptionList();
}

2:修改youlexuan-manager-web的brandService.js

//下拉列表数据
this.selectOptionList=function(){
return $http.get('../brand/selectOptionList.do');
}

3:修改youlexuan-manager-web的typeTemplateController.js

因为我们在模板控制层中需要使用品牌服务层的方法,所以需要添加依赖注入

//控制层
app.controller('typeTemplateController' ,function($scope,$controller ,typeTemplateService ,brandService){

使用品牌服务方法实现查询,结果赋给变量

$scope.brandList={data:[]};//品牌列表
  //读取品牌列表
  $scope.findBrandList=function(){
    brandService.selectOptionList().success(
      function(response){
        $scope.brandList={data:response};
      }
    );
  }
// 定义方法:获取JSON字符串中的某个key对应值的集合
$scope.jsonToString = function(jsonStr,key){
// 将字符串转成JSOn:
var jsonObj = JSON.parse(jsonStr);
var value = "";
for(var i=;i<jsonObj.length;i++){
if(i>){
value += ",";
}
value += jsonObj[i][key];
}
return value;
}

4:修改type_template.html ,添加JS引入

<script type="text/javascript" src="../js/base_pagination.js">  </script>
<script type="text/javascript" src="../js/service/typeTemplateService.js"> </script>
<script type="text/javascript" src="../js/service/brandService.js"> </script>
<script type="text/javascript" src="../js/controller/baseController.js"> </script>
<script type="text/javascript" src="../js/controller/typeTemplateController.js"> </script>

特别注意一下,JS引入的位置,要在typeTemplateController.js之前,因为该控制器要使用到它

5:修改type_template.html ,添加初始化

<body class="hold-transition skin-red sidebar-mini" ng-app="youlexuan" ng-controller="typeTemplateController" ng-init="findBrandList()">

select2的简单使用的更多相关文章

  1. bootstrap select2 使用简单介绍

    1. 基本属性配置: $("#select2-id").select2({ templateResult : formatState, // 列表带图片 templateSelec ...

  2. select2简单例子

    1.html中静态值 html <%--multiple 为多选--%> <select multiple id="e1"> <option>& ...

  3. select2 简单解析

    <select name="supplierId" class="customsBrokerSel select2 absOpacity select2-hidde ...

  4. jQuery的select2下拉框的搜索功能(使用select2插件,方便简单)

    第一步: 引入我们用使用的插件 jquery: select2: css: js: 第二步: 创建一个html页面,body内容: <div> <select class=" ...

  5. jQuery学习之路(5)- 简单的表单应用

    ▓▓▓▓▓▓ 大致介绍 接下来的这几个博客是对前面所学知识的一个简单的应用,来加深理解 ▓▓▓▓▓▓ 单行文本框 只介绍一个简单的样式:获取和失去焦点改变样式 基本结构: <form actio ...

  6. 利用Select2优化@Html.ListBoxFor显示,学会用MultiSelectList

    最近需要用到多选框,Asp.Net MVC自带的@Html.ListBox或@Html.ListBoxFor的显示效果太差,于是找到了Select2进行优化,并正式了解了多选框的操作方法. 首先介绍多 ...

  7. select2 demo

    https://select2.github.io/examples.html 一大堆的坑: 1. 不同版本之间貌似不兼容,对应版本看对应的文档. 2. 4.0.3版本: 1). 自定义渲染的opti ...

  8. 解决Select2控件不能在jQuery UI Dialog中不能搜索的bug

    本文使用博客园Markdown编辑器进行编辑 1.问题呈现 项目中使用了jQuery UI的Dialog控件,一般用来处理需要提示用户输入或操作的简单页面.逻辑是修改一个广告的图片和标题. 效果截图如 ...

  9. JS组件系列——Bootstrap Select2组件使用小结

    前言:在介绍select组件的时候,博主之前分享过一篇JS组件系列——两种bootstrap multiselect组件大比拼,这两个组件的功能确实很强大,只可惜没有图文结合的效果(也就是将图片放入到 ...

随机推荐

  1. scrapy学习笔记(一)

    环境:Windows 7  x64   Python3.7.1  pycharm 一.安装scrapy 1.1linux系统使用:pip install scrapy 1.2Windows系统: pi ...

  2. afnetwork使用

    Usage HTTP Request Operation Manager AFHTTPRequestOperationManager encapsulates the common patterns ...

  3. 软件设计师【软件工程:软件开发模型、XP极限编程十二最佳实践】

    一.软件开发模型 二.XP极限编程十二最佳实践

  4. 2.InfluxDB-InfluxQL基础语法教程--目录

    本文翻译自官网,官方文档地址:(https://docs.influxdata.com/influxdb/v1.7/query_language/data_exploration/) InfluxQL ...

  5. nrm : 无法加载文件 C:\Users\TANG\AppData\Roaming\npm\nrm.ps1,因为在此系统上禁止运行脚本。

    1.win+s 搜索powershell 以管理身份运行 2.使用set-ExecutionPolicy RemoteSigned命令将计算机上的执行策略更改为 RemoteSigned,输入Y确定 ...

  6. springboot读取自定义properties配置文件方法

    1. 添加pom.xml依赖 <!-- springboot configuration依赖 --> <dependency> <groupId>org.sprin ...

  7. I2C 挂死,SDA一直为低问题分析【转】

    转自:https://blog.csdn.net/winitz/article/details/72460775 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csd ...

  8. MATLAB之指定文件读取与读取地址输出

    一.读取指定文件夹下的指定格式文件 (1) 利用命令 uigetdir('','') 参数解释: uigetdir('所要打开的盘地址','对打开的弹出框进行描述') 例如:uigetdir('C:\ ...

  9. Go语言调度器之调度main goroutine(14)

    本文是<Go语言调度器源代码情景分析>系列的第14篇,也是第二章的第4小节. 上一节我们通过分析main goroutine的创建详细讨论了goroutine的创建及初始化流程,这一节我们 ...

  10. Java虚拟机所管理的内存,包含的运行时数据区域?

    运行时数据区域 线程私有(随用户线程的启动和结束而建立和销毁)或所有线程共享(随虚拟机进程的启动而存在) 抛出的异常 备注 程序计数器(Program Counter Register) 线程私有 唯 ...