jquery循环获取table中select ,input的值,要求一行一行的读取组织成字符串 求代码解决

2024-12-28 19:32:05
推荐回答(4个)
回答1:

这只是其中一种做法,方法还有很多,楼上两位的也可以。
主要是看怎么拼的好。
var aaa="";
jQuery("#table tr").each(function (i){//循环行
if(i==jQuery("#table tr").length-1)//判断最后一行
{
aaa+=jQuery("#table tr input").val();
}
else{
aaa+= jQuery("#table tr:eq("+i+") select").val()+":";//取到每行下拉框的值
jQuery("#table tr:eq("+i+") input[type=text]").each(function (){
aaa+=this.value+",";
});
aaa+="--";//此行结束
}
});

回答2:

$(document).ready(function(){
/*添加行数据*/
$(".J_add").click(function(){
var this_html=$(this).parents("tr").html();//当前新增所在行的html
var after_tr=$(this).parents("tr").after("");//向当前行插入一行tr
var after_tr=$(".after_tr");//选择插入行的类名
after_tr.html(this_html);//把变量this_html内容插入到创建后的空tr中
after_tr.find(".J_add").addClass("J_del").removeClass("J_add").val("删除");//把原来新增操作改成删除操作,并且把它的类名改成J_del
});
//移除方法
$(".J_del").live("click",function(){
$(this).parents("tr").remove();
});

})
123楼的方法也可以,我相信这个更好用

回答3:

$(function(){
var str="";
$("tr:has(select)").each(function(i){
str+=$(this).find("select").val();
$(this).find("input").each(function(){
str+=$(this).val()
})
})
alert(str);
})

回答4:

  var s = '';
$('#tableId tr td select,:text').each(function(i){
s += 'tr'+$(this).closest('tr').index()+'下的';
if(this.tagName=='SELECT')
s += 'select='+this.value+',';
if(this.tagName=='INPUT')
s+= 'input'+$(this).parent().index()+'='+this.value+',';
})
alert(s);