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 ...
随机推荐
- How to implement connection pool in spark streaming
在spark streaming的文档里,有这么一段: def sendPartition(iter): # ConnectionPool is a static, lazily initialize ...
- WPF:改变ListBoxItem和ListViewItem的颜色
目录 1. 改变ListBoxItem颜色 2. ListViewItem的颜色设置 注意: 本文仅讨论默认ListBoxItem和ListViewItem的鼠标指向和被选择后的前景和背景颜色设置.如 ...
- Confluence 6 教程:在 Confluence 中导航
当你对 Confluence 有所了解后,你会发现 Confluence 使用起来非常简单.这个教程主要是针对你使用的 Confluence 界面进行一些说明,同时向你展示在那里可以进行一些通用的任务 ...
- Elections CodeForces - 1020C (贪心)
大意: 有n个选民, m个党派, 第i个选民初始投$p_i$一票, 可以花费$c_i$改变投票, 求最少花费使得第一个党派的票数严格最大 假设最终第一个党派得票数$x$, 枚举$x$, 则对于所有票数 ...
- 『cs231n』作业3问题3选讲_通过代码理解图像梯度
Saliency Maps 这部分想探究一下 CNN 内部的原理,参考论文 Deep Inside Convolutional Networks: Visualising Image Classifi ...
- python-day21--序列化模块模块
什么叫序列化——将原本的字典.列表等内容转换成一个字符串的过程就叫做序列化 序列化的目的: 1.以某种存储形式使自定义对象持久化: 2.将对象从一个地方传递到另一个地方. 3.使程序更具维护性. ...
- HDU-3631 Shortest Path (floyd)
Description When YY was a boy and LMY was a girl, they trained for NOI (National Olympiad in Informa ...
- 数据库,ADO.NET(ADO),Oledb(Odbc)和编程语言关系框架图
---恢复内容开始--- ---恢复内容结束---
- OAF 功能中的参数含义
OA.jsp?OAFunc=POS_HT_SP_B_SUPP&OAPB=POS_SM_PRODUCT_BRANDING&OAHP=POS_SM_ADMIN_HOME&OASF= ...
- word中表格占满一页,在后面出现一个空白页 删除方法
如果空白面是最后一页,且鼠标在第一行,可选“格式”-“段落”,将这一行的行距设为固定值1磅,该空白页将自动消失.