js去除重复字符串两种实现方法


Posted in Javascript onJanuary 09, 2013

方法一:

function checkRe(checkid) { var id = window.parent.getQry("ctrid") + "_"; 
var values = window.parent.opener.document.getElementById(id + "txt_dept_name").value; 
var keys = window.parent.opener.document.getElementById(id + "hf_ids").value; 
var ary = checkid.value.split("|"); 
var newsValues = ary[0]; 
var newsKeys = ary[1]; 
if (checkid.checked) { 
values = values + "," + newsValues; 
keys = keys + "," + newsKeys; 
} 
else { 
values = values.replace(new RegExp("," + newsValues), ""); 
keys = values.replace(new RegExp("," + newsKeys), ""); 
} 
values = okd(values); 
keys = okd(keys); 
window.parent.opener.document.getElementById(id + "txt_dept_name").value = values; 
window.parent.opener.document.getElementById(id + "hf_ids").value = keys; 
return; 
} 
//转换成数组,去掉重复,再组合好。 
function okd(str) { 
var ary = str.split(","); 
// 去重的算法 
var json = {}; 
for (var i = 0; i < ary.length; i++) { 
if (ary[i] != "") { 
json["a" + ary[i]] = ary[i]; 
} 
} 
// 查看结果 
var str2 = ""; 
for (var key in json) { 
str2 += "," + json[key]; 
} 
var s = str2.toString(); 
//去掉第一个逗号 
if (s.substr(0, 1) == ',') { 
s = s.substr(1); 
} 
return s; 
} 
function add_all() { 
var ck = document.getElementsByTagName("input"); 
for (i = 0; i < ck.length; i++) { 
if (ck[i].type == "checkbox") { 
ck[i].checked = true; 
checkRe(ck[i]); 
} 
} 
} 
function del_all() { 
var id = window.parent.getQry("ctrid") + "_"; 
window.parent.opener.document.getElementById(id + "txt_dept_name").value = ""; 
window.parent.opener.document.getElementById(id + "hf_ids").value = ""; 
var ck = document.getElementsByTagName("input"); 
for (i = 0; i < ck.length; i++) { 
if (ck[i].type == "checkbox") { 
ck[i].checked = false; 
} 
} 
}

<input id='chk_pkId' type='checkbox' name='chk' onclick='checkRe(this);' value='值|pkId' />

方法二:
function filterRepeatStr(str){ 
var ar2 = str.split(","); 
var array = new Array(); 
var j=0 
for(var i=0;i<ar2.length;i++){ 
if((array == "" || array.toString().match(new RegExp(ar2[i],"g")) == null)&&ar2[i]!=""){ 
array[j] =ar2[i]; 
array.sort(); 
j++; 
} 
} 
return array.toString(); 
}
Javascript 相关文章推荐
Extjs优化(二)Form表单提交通用实现
Apr 15 Javascript
11种ASP连接数据库的方法
Sep 18 Javascript
jquery获取select选中值的方法分析
Dec 22 Javascript
jQuery实现网页顶部固定导航效果代码
Dec 24 Javascript
jQuery 实现鼠标画框并对框内数据选中的实例代码
Aug 29 jQuery
echarts学习笔记之图表自适应问题详解
Nov 22 Javascript
zTree 树插件实现全国五级地区点击后加载的示例
Feb 05 Javascript
js判断输入框不能为空格或null值的实现方法
Mar 02 Javascript
vue2.0 element-ui中el-select选择器无法显示选中的内容(解决方法)
Aug 24 Javascript
ajax与jsonp的区别及用法
Oct 16 Javascript
JS执行控制之节流模式实例分析
Dec 21 Javascript
JS加载解析Markdown文档过程详解
May 19 Javascript
jquery插件之信息弹出框showInfoDialog(成功/错误/警告/通知/背景遮罩)
Jan 09 #Javascript
javaScript矢量图表库-gRaphael几行代码实现精美的条形图/饼图/点图/曲线图
Jan 09 #Javascript
一行代码实现纯数据json对象的深度克隆实现思路
Jan 09 #Javascript
javascript parseInt() 函数的进制转换注意细节
Jan 08 #Javascript
Raphael一个用于在网页中绘制矢量图形的Javascript库
Jan 08 #Javascript
jquery插件珍藏(图片局部放大/信息提示框)
Jan 08 #Javascript
jquery Mobile入门—外部链接切换示例代码
Jan 08 #Javascript
You might like
通过具体程序来理解PHP里面的抽象类
2010/01/28 PHP
PHP变量的定义、可变变量、变量引用、销毁方法
2013/12/20 PHP
PHP邮件群发机实现代码
2016/02/16 PHP
图片之间的切换
2006/06/26 Javascript
javascript,jquery闭包概念分析
2010/06/19 Javascript
jQuery实现form表单reset按钮重置清空表单功能
2012/12/18 Javascript
jquery实现增加删除行的方法
2015/02/03 Javascript
js实现Select下拉框具有输入功能的方法
2015/02/06 Javascript
jQuery鼠标经过方形图片切换成圆边效果代码分享
2015/08/20 Javascript
jQuery实现带延迟的二级tab切换下拉列表效果
2015/09/01 Javascript
jQuery增加与删除table列的方法
2016/03/01 Javascript
jQuery实现删除li节点的方法
2016/12/06 Javascript
node.js中axios使用心得总结
2017/11/29 Javascript
解决使用layui对select append元素无效或者未及时更新的问题
2019/09/18 Javascript
vue项目创建步骤及路由router
2020/01/14 Javascript
JavaScript中reduce()的5个基本用法示例
2020/07/19 Javascript
[01:02:03]2014 DOTA2华西杯精英邀请赛 5 24 NewBee VS VG
2014/05/26 DOTA
[48:54]VGJ.T vs infamous Supermajor小组赛D组败者组第一轮 BO3 第二场 6.3
2018/06/04 DOTA
python计算最大优先级队列实例
2013/12/18 Python
浅析Python中的序列化存储的方法
2015/04/28 Python
Python闭包的两个注意事项(推荐)
2017/03/20 Python
Python文件读写常见用法总结
2019/02/22 Python
美国婴儿服装购物网站:Gerber Childrenswear
2020/05/06 全球购物
公司出纳岗位职责
2013/12/07 职场文书
运动会开幕式解说词
2014/02/05 职场文书
移风易俗倡议书
2014/04/15 职场文书
日语专业毕业生自荐书
2014/06/18 职场文书
处级干部考察材料
2014/12/24 职场文书
商务代表岗位职责
2015/02/15 职场文书
2016寒假社会实践心得体会范文
2015/10/09 职场文书
高中语文教学反思范文
2016/02/16 职场文书
机关单位2016年法制宣传日活动总结
2016/04/01 职场文书
python 实现体质指数BMI计算
2021/05/26 Python
Eclipse+Java+Swing+Mysql实现电影购票系统(详细代码)
2022/01/18 Java/Android
千万级用户系统SQL调优实战分享
2022/03/03 MySQL
python神经网络学习 使用Keras进行简单分类
2022/05/04 Python