拼table很麻烦的,你还不如先把数据显示在一个完整的table中,然后用jquery方法按你的要求把前面三列根据你的要求做行列合并处理。比如你检查前三列只有第一列数据是火星,后两列是空的,则把三列合并。合并的jquery代码可以参考这个。
// td.attr("rowSpan", 3);
// td.remove();
jQuery(document).ready(function() {
var j = 0;
jQuery("table tr").each(function() {
j++;
var td = jQuery(this).find("td:eq(2)"); //从第几列开始
if(j == 3){ //当循环到第几行时
td.attr("rowSpan", 3);
}
});
var j = 0;
jQuery("table tr").each(function() {
j++;
var td = jQuery(this).find("td:eq(2)"); //从第几列开始
if(j == 4||j==5){ //当循环到第几行时
td.remove();
}
});
})
多谢LCM大哥,jquery这个方法合并行列很好用,相对于开始我用的拼接table更方便,最重要是在后期要获取控件值中这种方式很适合,因为直接在gridview的事件中就可以获取填写的值,而不用在去获得我拼接的控件一个一个去获取,也感谢白云天大哥的建议 ... 后来发现jquery是有合并行列的插件的用起来可能更方便
以前做过类似的;
感觉在.CS文件里面拼接Table,逻辑好写很多;
Table table = new Table();
TableRow tr = new TableRow();
TableCell td = new TableCell();
td.ColumnSpan = ?;控制单元格跨越的列数
td.RowSpan = ?; 控制单元格跨越的行数
怎么,拼接<table>没能解决问题吗?
拼接table是可以,但是太麻烦,后面实际需求中有若干项需要获得用户填写的数据保存库中
获取数据用jquery脚本就可以实现,用户填写的舒适度跟前面的类别应该对应吧,你可以给Input设置上标签,对应第一个类别,用脚本去循环判断标签,得到对应数据,再将数据拼接成一个字符串,用后台cs代码保存不就行了(或用ajax调用一般处理程序执行也可以)