Java如何做动态表格?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java如何做动态表格?相关的知识,希望对你有一定的参考价值。

一、动态加载表格
1.首先在html中为表格的添加位置设置id
即是在html的body标签内部写一个div标签表明表格要添加到此div的内部。如下
<div id="tdl"><div>
2.在javascript中写添加表格的语句
若在当前html文件中,则写在<script>标签内部,如
代码如下:

<script type="text/javascript" >
document.getElementById("tbl").innerHTML="<table><tr><td></td></tr></table>" //此处添加的表格可根据自己需要创建
</script>
若是通过引入js文件,则在js文件(假设是test.js)中直接写如下语句
代码如下:

document.getElementById("tbl").innerHTML="<table><tr><td></td></tr></table>"
然后再引入自己的html文件
代码如下:

<script type="text/javascript" src="test.js"></script>
二、 动态添加表格行
1.首先在html中为表格行的添加位置设置id,此位置必须是<tbody>内部(不是特别准确,但根据我的测试就得到此结论,有其他的方法请留言,谢谢),如下
代码如下:

<table>
<thead></thead>
<tfoot><tfoot> //tfoot与thead是与tbody配套使用,但我在写的时候,没用也可以。
<tbody id="rows"></tbody>
</table>
[\\s\\S ]*\\n
2.在javascript内容中,要先创建行和单元格,再在<.tbody>中添加行,如下
[code]
row=document.createElement("tr"); //创建行
td1=document.createElement("tr"); //创建单元格
td1.appendChild(document.createTextNode("content")); //为单元格添加内容
row.appendChild(td1); //将单元格添加到行内
document.getElementById("rows").append(row); //将行添加到<tbody>中
参考技术A 是报表吗?基本上都要通过很多参数来控制是否显示行列。
如果是html的table 需要用js来控制。追问

可以贴点代码?

追答

做报表需要 报表工具。如果用js控制的话 没有现成的代码。你可以想想,我只是提供一个思路。希望楼下能有好方法

参考技术B 报表:
1、ireport+jasperreport
2、帆软的FindReport
Excel:
1、POI,poi.apache.org/
2、JXL,jxl.sourceforge.net/
两者都很强大,相对来说jxl较轻量级
参考技术C 是指UI界面的还是Web的?

如何动态更改表格视图单元格的颜色

【中文标题】如何动态更改表格视图单元格的颜色【英文标题】:How to change the color of a table view cell dynamically 【发布时间】:2016-12-18 11:46:47 【问题描述】:

如何动态改变表格视图单元格的颜色。 我想实现屏幕截图所示的效果,请提出建议。

提前致谢。

【问题讨论】:

swift 还是objectiv-c? 您得到的两个答案都为您提供了根据单元格的 indexPath 分配颜色的方法。您需要做的是弄清楚您想要的单元格颜色,以及如何生成这些颜色。您想要在示例图像中显示的特定颜色吗?我建议将您的示例颜色放入 Photoshop 之类的照片编辑器中,对每个颜色的 RGB 值进行采样,然后得出一组颜色值(如@tejendrasingh 的答案)或为每个步骤生成这些颜色值的函数(如阿德里安的回答)。 你总共有多少个单元格?您需要将颜色变化从开始到结束单元格展开。 【参考方案1】:

这很容易做到:

我在下面给出一个演示:

    首先,将tableView拖到vc

    其次,设置tableView的delegate和dataSource:

    第三步,在你的vc中,设置data

    导入 UIKit

    类 ViewController: UIViewController, UITableViewDelegate, UITableViewDataSource

    @IBOutlet 弱变量表视图:UITableView!

    var cellCount:Int! = 6

    var cus_color:UIColor = UIColor.init(red: 35 / 255.0, green: 204/255.0, blue: 216.0/255.0, alpha: 1.0)

    override func viewDidLoad() 
        super.viewDidLoad()
    
        self.tableView.separatorStyle = .none
    
    
    func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat 
    
        return 100
    
    
    func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int 
        return cellCount
    
    
    func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell 
    
        let cell = UITableViewCell() // or your custom cell
    
        let perLevel:CGFloat = CGFloat(1.0) / CGFloat(self.cellCount)
    
        cell.backgroundColor = UIColor.init(red: 35 / 255.0, green: 204/255.0, blue: 216.0/255.0, alpha: (perLevel + CGFloat(indexPath.row) * perLevel))
    
        return cell
    
    
    func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) 
        self.tableView.deselectRow(at: indexPath, animated: false)
    
    
    
    

【讨论】:

【参考方案2】:

您可以使用 UITableViewCell 属性 backgroundColor 来动态设置单元格颜色。

例子-

-(UITableViewCell*)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath


    UITableViewCell* cell = [self.tableView dequeueReusableCellWithIdentifier:@"Cell"];
    if (!cell) 
        cell = [[UITableViewCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"Cell"];
    
    //cellColorHolder is UIColor object type array.
    cell.backgroundColor = (UIColor*)[cellColorHolder objectAtIndex:indexPath.row];
    return cell;

【讨论】:

以上是关于Java如何做动态表格?的主要内容,如果未能解决你的问题,请参考以下文章

如何利用AngularJS动态创建表格和动态赋值

动态创建表格怎么用CSS设置表格属性 我是初学着,急用。我的代码如下 但是表格显示不出来

如何使用 Selenium 和 Java 提取表格元素的 id 属性的动态值

如何动态更改表格视图单元格的颜色

element ui的表格列设置fixed后做动态表格出现表格错乱

Element实现动态表格的示例代码