Nolia 给CC添加过滤器
思路:
1.使用jqurey-tagput ,做得不好看,领导不满意
2.使用bootstrap select2这个控件,
思路:
1.添加css和js的文件
2.添加标签的时候,根据id拼接标签,addSearBox的时候会添加初始化数据,根据不同的id进行初始化;这样添加的时候界面就变化了
3.后来刷新界面以后,页面发生变化,做了这样的操作,添加这样的代码

4.添加选择,和非选择的事件,这点还是很麻烦的;用了一个小算法
var id = target.attr('id');//CC=basic-14
if(id=="basic-14"){
$.ajax({
type:"get",
url:"http://localhost:8080/4booking/js/CCtest.json",
dataType:"json",
asynchronous:true,
contentType:"application/json",
success:function(data){
//alert("success");
var data1 = $(data.items);
var result = [];
$.each(data1,function(infoIndex,info){
if(info.business == "" && info.owner == "")
{
result.push({id: info.id, text: info.name});
}
else{
result.push({id: info.id, text: info.name+ ":"+ info.owner + "," + info.business});
}
})
// oneReq = result;
$("#basic-14").select2({
data: result,
placeholder:'Please Select',//默认文字提示
// language: "en",//汉化
allowClear: true//允许清空
})
var temp =[];//删除保存上一次
var tmp1 =[];//保存上一次
$("#basic-14").on("select2:select",function(e){
//1.获取数据
//2.添加标签
// e 的话就是一个对象 然后需要什么就 “e.参数” 形式 进行获取
//alert("我选择了");
var ids= $("#basic-14").select2('val');
var arrIds = ids.toString().split(',');
temp = arrIds;
//tmp1 = arrIds;
// alert(tmp1);
//alert(ids);//添加的时候没有添加对,因为数组是动态的
if(tmp1==null){
tmp1 = [];
}
if(tmp1.length==0){
//alert("我的 00");
addTreeSubmitInput("basic-14", ids[0]);
}else{
//alert("1111111");
for(var i=0;i<ids.length;i++){//每一个值
var num = 0;
for(var j=0;j<tmp1.length;j++){
if(ids[i]!=tmp1[j]){
num++;
}
}
if(num==tmp1.length){
//alert("addddd");
addTreeSubmitInput("basic-14", ids[i]);
break;
}
}
}
tmp1 = ids;
console.log(e);
})
$("#basic-14").on("select2:unselect",function(result){
//1.获取数据
//2.添加标签
//$('#' + 'qqq' + '_treeSubmitInput').remove();
var ids= $("#basic-14").select2('val');
tmp1 = ids;
//alert(tmp1);
//alert(ids);
//alert(temp);
if(ids==null){
//alert("xxxxx");
$('#' + temp[0] + '_treeSubmitInput').remove();
}else{
for(var i=0;i<temp.length;i++){//每一个值
var num = 0;
for(var j=0;j<ids.length;j++){
if(temp[i]!=ids[j]){
num++;
}
//alert(num);
}
//alert("xxx");
if(num==ids.length){
//alert(temp[i]);
if(ids!=null){
$('#' + temp[i] + '_treeSubmitInput').remove();
}
console.log(temp[i]);
break;
}
}
}
temp = ids;
})
//alert($(oneReq).size());
},
error:function(data){
alert("lose");
}
});
Nolia 给CC添加过滤器的更多相关文章
- Hibernate之HQL添加过滤器查询的用法
HQL查询过程中支持添加过滤器.使用步骤是这样的: 首先在要查询的实体对象的映射中使用<filter-def>标签配置过滤器,并在相对应的<class>标签中添加对应的< ...
- 【C#】WebApi 添加过滤器,实现对请求参数和响应内容的日志记录
filter的介绍 filter在Web API中经常会用到,主要用于记录日志,安全验证,全局错误处理等:Web API提供两种过滤器的基本类型:actionfilterattribute,excep ...
- mvc 添加过滤器并添加session缓存判断
功能实现: 登录时添加session缓存.判断是否登录过期. 1.判断是否需要登录判断 public static AdminLoginUser GetAdminLoginUser(){#region ...
- jsp中添加过滤器,实现校验用户身份
我现在需要实现一个功能,就是用户登录前不允许访问系统,我使用的是jsp的过滤器来实现的. 先把filter过滤器的代码粘出来: package com.day8.filter; import java ...
- vue 添加过滤器-以格式化日期为例
vue的filter和angular的pipe管道类似,是过滤器 官网:https://cn.vuejs.org/v2/guide/filters.html 添加格式化日期的全局过滤器 在main.j ...
- AngularJS 表达式中添加过滤器实例
过滤器可以通过一个管道字符(|)和一个过滤器添加到表达式中 历练实例: <!DOCTYPE html><html><head><meta http-equiv ...
- Spring Cloud - Zuul添加过滤器
Zuul作为网关的其中一个重要功能,就是实现请求的鉴权.而这个动作我们往往是通过Zuul提供的过滤器来实现的. 一.过滤器方法的作用 想要使用Zuul实现过滤功能,我们需要自定义一个类继承ZuulFi ...
- Vue-easyui中如何给ComboGrid添加过滤器
1,给ComboGrid绑定监听事件,将事件对象传入.文档:http://www.jeasyui.net/vue/653.html @filterChange="example($event ...
- .NetCore 在不同位置添加过滤器
前言 以ParaModelValidateAttribute(参数校验)和ErrorCatch(错误捕捉)为例. 在方法上添加(局部) 这种方式比较灵活 [ParaModelValidate] [Er ...
随机推荐
- Servlet / Tomcat / Spring 之间的关系
0.基础知识 在idea中打开servlet的源码: 可以看见servlet就是一个接口:接口就是规定了一些规范,使得一些具有某些共性的类都能实现这个接口,从而都遵循某些规范. 有的人往往以为就是se ...
- mybatis: 多对多查询[转]
加入3个包 log4j-1.2.17.jar mybatis-3.3.0.jar mysql-connector-java-5.1.8.jar log4j需要配置 log4j.properties # ...
- Please, another Queries on Array? CodeForces - 1114F (线段树,欧拉函数)
这题刚开始看成求区间$\phi$和了........先说一下区间和的做法吧...... 就是说将题目的操作2改为求$(\sum\limits_{i=l}^{r}\phi(a[i]))\%P$ 首先要知 ...
- jenkins+python+kubectl实现批量更新k8s镜像
一.jenkins使用官方镜像(官方镜像默认是jenkins用户,权限太低) 因此通过dockerfile重新改为root启动 FROM jenkins/jenkins:lts MAINTAINER ...
- POJ-1129 Channel Allocation (DFS)
Description When a radio station is broadcasting over a very large area, repeaters are used to retra ...
- python 小练习 11
桌子上有一堆数量不超过20的果子,每个果子的重量都是不超过20的正整数,全部记录在列表 L 里面.小明和小红决定平分它们,但是由于他们都太自私,没有人愿意对方比自己分得的总重量更多.而果子又不能切开, ...
- HDU 4764 Stone (巴什博弈)
题意 Tang和Jiang玩石子游戏,给定n个石子,每次取[1,k]个石子,最先取完的人失败,Tang先取,问谁是赢家. 思路 比赛的时候想了不久,还WA了一次= =--后来看题解才发现是经典的巴什博 ...
- OC 文件基本操作
// // main.m // oc_13 // // Created by ma c on 15/12/17. // Copyright (c) 2015年 博文科技. All rights res ...
- 简话Angular 02 Angular控制器-作用域嵌套
一句话: 就是孩子可以啃老,老子不能动孩子一根毛! * 子控制器有父控制器里变量的所有权限,可以读取,也可以修改. * 父控制器不能读,也不能修改孩子的变量 1. html代码 <div ng- ...
- 微信小程序wx.chooseImage和wx.previewImage的综合使用(图片上传不限制最多张数)
WXML: <view class="weui"> <view class="weui-uploader"> <view clas ...