程序员最近都爱上了这个网站  程序员们快来瞅瞅吧!  it98k网:it98k.com

本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长


+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

暂无数据

使用 javascript 函数打印出动态 html 表(jquery 数据表插件)

发布于2022-05-23 22:42     阅读(1162)     评论(0)     点赞(4)     收藏(4)


好的,所以我在这个问题上已经有一段时间了,并且已经彻底研究过了。首先,我使用的是 Spring Tool Suite - MVC Project。处理 .jsp 页面

我正在尝试找出动态创建和编辑 HTML 表的最佳/正确/有效方法,该 HTML 表将基于 MySql 数据库中的数据链接到 dataTables(jQuery 插件)表。

我希望用户能够根据不同的用户输入更新表格......按钮、价格范围输入等。

到目前为止,我研究过的最好的方法是将表的创建包装在一个 js 函数中,然后创建其他函数来改变表,添加到它,更新它,或者我想做的任何其他事情。到目前为止,我没有运气使用函数创建数据表,我能做的最好的事情是使用 java 连接到我的数据库并创建一个成功加载并显示数据库中数据的 SINLGE 表,问题是我无法更改页面加载后的表,每次基于新的 sql 查询刷新表的尝试都失败了。

Datatables 有一个相当大的 api,我可以用它向表中添加一行,但其他看起来很有用的功能,比如更新表不起作用。

这让我思考是否应该完全重新考虑我的方法。我应该采取什么方法?

如果需要,我会发布代码

先感谢您


解决方案


 <%
 ArrayList<ArrayList<String>> aaList = new ArrayList<ArrayList<String>>();
 ResultSet rs;
     Statement statement = null;
     Class.forName("com.mysql.jdbc.Driver");
     Connection conn = DriverManager.getConnection("jdbc:mysql://ics321instance.cglh44ydeyny.us-east-1.rds.amazonaws.com/ics321", "user", "password");
     statement = conn.createStatement();
     //this query should return all items
     rs = statement.executeQuery("select * from Product where price < 10;");

     int counter=1;
     ResultSetMetaData metaData = rs.getMetaData();
     %>

    <table id = "example">
    <thead>
        <tr>
            <%
            for(int q = 1; q<=metaData.getColumnCount();q++)
            {%>
                <th><%= metaData.getColumnName(q)%></th>
            <%
            }
            %>
        </tr>
    </thead>
    <tbody>
            <%
            while(rs.next())
            {
            %>
                <tr>
                 <%
                 for(int i = 1; i<=metaData.getColumnCount();i++)
                 {%>
                    <td><%= rs.getString(i)%></td>
                 <% 
                 }
                 %> 
                </tr>                  
            <% 
             }
             %>
   </tbody>
</table>

所以在这里我正在建立与数据库的连接并在 jsp 中执行查询 - 我知道这是不好的做法,但我想不出任何其他方式

在标题中我有我的 js

$(function() {
     $("#example").dataTable({
       "sScrollY": "400px",
       "bPaginate": false,
       "bScrollCollapse": true 
     });
}

我认为正确的方法是在我的控制器内部使用 JDBCTemplate - 但我不确定如何在我的 .jsp 文件中引用该数据。

同样,我的目标是拥有一个表(datatables jquery 插件)并根据用户与 jsp 页面、按钮、文本输入等的交互来更新该表。

datatables api - fnDraw() 有一个方法,它应该重绘表格,但我不知道在哪里放置函数。

谢谢




所属网站分类: 技术文章 > 问答

作者:黑洞官方问答小能手

链接:http://www.qianduanheidong.com/blog/article/360631/faed1cb4cdb6e43fb565/

来源:前端黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

4 0
收藏该文
已收藏

评论内容:(最多支持255个字符)