将json数据集合表格显示及表格中增加按钮

本文介绍了如何将从后台获取的JSON数据集合以表格形式展示在前端,并通过EL表达式简化遍历过程,避免了在JavaScript中插入HTML的复杂性。文中还展示了如何在表格中添加删除、更新和新增按钮,利用POST方法传递数据,以及处理JSON数组输入的技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

将json数据集合表格显示

本文讲述的是将后台获取到的json数据集合用表格的方式呈现到前端

第一次的时候,根据网上的教程,使用了js方法,对json集合进行遍历后输出,发现其较为复杂,且输出的时候因为要在js里加入html语句,导致了一些问题。(由于表格语句是在js遍历的时候用“innerHTML”输出的,后来需要在表格中添加一些如按钮等其他元素,而使用“innerHTML”语句本身就包含了引号,而html语句也需要引号,从而导致了许多不必要的麻烦)为了减少这些麻烦,后再便采用了EL表达式的 foreach循环输出,EL表达式可以直接在html语句中使用,既方便又快捷。下面上代码

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%--
  Created by IntelliJ IDEA.
  User: hasee
  Date: 2017/8/16
  Time: 14:47
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>

<table>
    <tr>
        <th>id</th>
        <th>sql_name</th>
        <th>sql_detail</th>
        <th>description</th>
        <th>删除</th>
        <th>修改</th>
    </tr>
    <c:forEach items="${data}" var="one" varStatus="num" >
        <tr>
            <td>${one.id}</td>
            <td>${one.sqlName}</td>
            <td>${one.sqlDetail}</td>
            <td>${one.description}</td>
            <%--<td><button type="button" class="del" onclick="del(${one.id})" href="/form/formsql/delete/data=">删除</button> </td>--%>
            <td>
                <form class="del" action="/lab/form/formsql/delete" method="post">
                    <input type="hidden" name="id" value="${one.id}">
                    <input type="submit" value="删除">
                </form>
            </td>
            <td>
                <form class="updated" action="/lab/form/formsql/updated" method="post">
                    <input type="hidden" name="id" value="${one.id}">
                    <input type="text" name="up">
                    <input type="submit" value="更新">
                </form>
            </td>
        </tr>
    </c:forEach>
</table>
<form id="insert" action="/lab/form/formsql/insert" method="post">
    name:<input type="text" name="sqlname">
    sql_name:<input type="text" name="detail">
    description:<input type="text" name="desc">
    <input type="submit" value="新增">
</form>

</body>


</html>

可以明显看出,使用foreach后的代码十分简洁,且实用

<c:forEach items="${data}" var="one" varStatus="num" >
        <tr>
            <td>${one.id}</td>
            <td>${one.sqlName}</td>
            <td>${one.sqlDetail}</td>
            <td>${one.description}</td>
</c:forEach>

将后台拿到的数据“data”类似与java中foreach一样使用,不过改变了形式而已。

<td>
                <form class="del" action="/lab/form/formsql/delete" method="post">
                    <input type="hidden" name="id" value="${one.id}">
                    <input type="submit" value="删除">
                </form>
            </td>

后面增加的“删除”按钮,采用的是post方法传给后台,因为点击按钮的同时需要传递一些数据,在此采用的是隐藏框赋予其值

接着后面的“更新”与“新增”按钮也都类似,只不过整个项目的数据均用json数组进行传输,因此输入的内容在此也是json数组,思路也都一样,一个按钮,一个隐藏框获取对应id(后台比对数据库),一个输入框(json语句,获取所需信息)

本文到此结束,纯属入门级新手经验,如有错误请指出,不胜感激,有兴趣亦可相互交流,谢谢!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值