用srcElement实现添加效果 原创
无标题文档
function addthis(){
var srcE=event.srcElement?event.srcElement:event.target;
var thev=srcE.value;
//alert(thev);
var s=document.forms[0].likes.value.indexOf(thev)
if(s==-1){
document.forms[0].likes.value+=thev+",";
}}
电脑/网络 |
电子游戏 |
体育运动 | 饮酒 | 品茗 |
弹琴 | 看电影/电视 | 下棋/打牌 | 观光旅游 | 逛街购物 |
阅读 | 写作 | 烹调 | 舞会/卡拉OK | 健身/武术 |
水上活动 | 文艺表演 | 聊天 | 家事/手工艺 | 书法/绘画 |
储蓄/投资 | 养宠物 | 听音乐 | 各种收集活动 | 摄影/艺术创作 |
[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]
2006-08-21可以自己检测,不要每个checkbox加事件,删除功能没有实现
无标题文档
function addthis(){
var srcE=event.srcElement?event.srcElement:event.target;
if((srcE.tagName=="INPUT")&&(srcE.type.toLowerCase()=="checkbox")){
var thev=srcE.value;
var theid=srcE.id;
//alert(theid);
if(theid.indexOf('xinge')!=-1){
thetag="xinge";
}else{
thetag="likes";
}
//alert(thetag);
switch(thetag){
case "likes":
var s=document.forms[0].likes.value.indexOf(thev);
if(s==-1){
document.forms[0].likes.value+=thev+",";
}
break;
case "xinge":
var s=document.forms[0].xinge.value.indexOf(thev);
if(s==-1){
document.forms[0].xinge.value+=thev+",";
}
break;
}
}}
document.onmousedown=addthis;
兴趣爱好 | ||||
电脑/网络 |
电子游戏 |
体育运动 | 饮酒 | 品茗 |
弹琴 | 看电影/电视 | 下棋/打牌 | 观光旅游 | 逛街购物 |
阅读 | 写作 | 烹调 | 舞会/卡拉OK | 健身/武术 |
性格: | ||||
活泼 | 尖刻 | 自闭 | 等等 | 外向 |
[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]
blueidea斑竹回复,推荐
无标题文档
var likes=new Array(); xinge=new Array();
function addthis(e){
var e, srcE, op, opt, i;
e=window.event?window.event:e;
srcE=e.srcElement?e.srcElement:e.target;
if(!srcE)return;
if(String(srcE.tagName).toLowerCase()!="input"||String(srcE.type).toLowerCase()!="checkbox")return;
if(srcE.id.indexOf("xinge")!=-1){ op=xinge; opt=document.forms[0].xinge }else{ op=likes; opt=document.forms[0].likes; }
if(srcE.checked){
i=-1;
while(op[++i])if(op[i]==srcE.value)return;
op[i]=srcE.value;
}else{
i=-1;
while(op[++i])if(op[i]==srcE.value){op.splice(i,1);i--;}
}
opt.value=op;
}
document.onkeydown=document.onchange=document.onclick=addthis;
兴趣爱好 | ||||
电脑/网络 |
电子游戏 |
体育运动 | 饮酒 | 品茗 |
弹琴 | 看电影/电视 | 下棋/打牌 | 观光旅游 | 逛街购物 |
阅读 | 写作 | 烹调 | 舞会/卡拉OK | 健身/武术 |
性格: | ||||
活泼 | 尖刻 | 自闭 | 等等 | 外向 |
[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]
splice 方法
从一个数组中移除一个或多个元素,如果必要,在所移除元素的位置上插入新元素,返回所移除的元素。
arrayObj.splice(start, deleteCount, [item1[, item2[, . . . [,itemN]]]])
参数
arrayObj 必选项。一个 Array 对象。
start
必选项。指定从数组中移除元素的开始位置,这个位置是从 0 开始计算的。
deleteCount
必选项。要移除的元素的个数。
item1, item2,. . .,itemN
必选项。要在所移除元素的位置上插入的新元素。
说明
splice 方法可以移除从 start 位置开始的指定个数的元素并插入新元素,从而修改 arrayObj。返回值是一个由所移除的元素组成的新 Array 对象。