table width="100%" border="0" cellspacing="0" cellpadding="0"
成都创新互联长期为上1000+客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为伊犁企业提供专业的成都网站建设、网站设计,伊犁网站改版等技术服务。拥有10年丰富建站经验和众多成功案例,为您定制开发。
tr
tdinput class="in" name="check[]" type="checkbox" value="1" id="id1" //td
td1/td
td待财务初审/td
td通用机打发票/td
td1/td
td否/td
td/td
td........./td
/tr
tr
tdinput class="in" name="check[]" type="checkbox" value="2" id="id2" //td
td1/td
td待财务初审/td
td通用机打发票/td
td2/td
td否/td
td/td
td........./td
/tr
tr
tdinput class="in" name="check[]" type="checkbox" value="3" id="id3" //td
td1/td
td待财务初审/td
td通用机打发票/td
td11/td
td是/td
td/td
td........./td
/tr
/table
input id="butt" type="button" value="按钮" /
script
$(function(){
$("#butt").click(function(){
var d=[];
var i=1;
$("input[class=in]:checked").each(function(){
var t=$(this).val();
var htm=$("#id"+t).parents("tr").children("td");
d.push(htm.eq(2).html()+htm.eq(3).html()+htm.eq(5).html()+htm.eq(6).html());
i++;
});
alert(GetUnique(d));
});
function GetUnique(inputArray){
var outputArray=[];
for(var i=0;iinputArray.length;i++){
if((jQuery.inArray(inputArray[i],outputArray))==-1){
outputArray.push(inputArray[i]);
}
}
return outputArray;
}
});
/script
______________________________________
上面只是根据你的说明写出来的例子,具体的还要看你的html布局
根据你说的,我建议你使用异步的方法做会比较简单和方便。
使用恒等(===)判断(值与类型都一致)
如果用用等同(==)判断(值一致)的话有误判情况
var a = "1"; //字符串1
var b = 1; //数值1
var c = true; //布尔值1
var d = "1";
if (a==b a==c a==d) {console.log('equality');} //输出equality
if (a===b || a===c) { //输出not identity
console.log('identity');
}
else {
console.log('not identity');
}
if (a===d) {console.log('identity');} //输出identity
jQuery 对象的本质还是对象,在 js 中对象的比较,由于是引用类型,所以 == 或 === 都可以。
因为不同的对象,他们的引用地址是不一样的,这个地址是一个值,一定是不一样,所以用 == 也可以。
元素 都是对象, 不能直接比较是否相等
因为元素的对象有很多属性 2个value一模一样的元素 因为在dom流中所处的位置不同, 那么他的top left 等属性也不相同, 即使元素是重叠的, 那么元素的Z-INDEx也是不同的.
总之 一个页面中不存在2个一模一样的元素. 所以只能判断元素的某个属性是否相同 而不能判断 两个元素是否相同.
只拿对象比较的话,取出的是对象类型,可以试试alert(a.parent().parent())返回是object
这是无法比较的,最好是用ID或者class标识出不同对象
实在有特殊情况的话,上面的例子可以用alert(a.parent().parent().html() === a.parent().parent().html());
但是页面里有别的相同的html结构的话,会产生歧义