1.基本原理如下:
var flag=0; $("#id").click( if(flag==0) { $("#id").addClass("active"); } else { flag=1; $("#id").removeClass("active"); } )
2.自己写了一个简短的小实例:除了在点击选中列表中多个对象的改变其样式的同时,将对象的ID存贮到数组中,再次点击的时候,去掉选中状态,也将数组中对应的对象ID去掉
1》在展示列表的同时,每个对象多声明一个隐藏域,存储flag状态
<input type="hidden" value="$!VelocityCount" id="h$!item.id" />(这里是velocity的语法,VelocityCount=1,2,3,4~~相当于列表的行数,第一行VelocityCount=1,第二行VelocityCount=2,以此类推)
2》JQuery方法如下
var r_ids = new Array(); function toUPdate(id,flag) { var flag0 = $("#h" + id).val(); if (flag == flag0) { r_ids.push(id); $("#R_ids").val(r_ids); $("#h" + id).val('0'); } else { $("#h" + id).val(flag); for (var i = 0; i < r_ids.length; i++) { if (r_ids[i] == id) { r_ids = r_ids.slice(0, i).concat(r_ids.slice(i + 1, r_ids.length)); $("#R_ids").val(r_ids); break; } } } }