weixin_58648225 2022-03-31 15:14 采纳率: 89.2%
浏览 43
已结题

块儿元素内的表格导出csv 但如何剔除中间的某一列数据

代码大概样式如下


<form class="mt20" method="post" action="">
    <input id="data_html" type="hidden" name="data">
    <input type="hidden" name="action" value="csv_out">
    <input class="btn btn-primary" type="submit" value="CSVで保存">
</form>
<div id="div_html">
    <table class="table">
        <thead>
            <tr>
                <th><?php echo $word->get('lesson_id'); ?></th>
                <th><?php echo $word->get('client_name'); ?></th>
                <th><?php echo $word->get('app_id'); ?></th>
                <th><?php echo $word->get('app_name'); ?></th>
                <th><?php echo $word->get('ymd'); ?></th>
                <th><?php echo $word->get('time'); ?></th>
                <th><?php echo $word->get('lesson_form'); ?></th>
                <th><?php echo $word->get('lesson_type'); ?></th>
                <th><?php echo $word->get('classroom'); ?></th>
                <th><?php echo $word->get('tutor'); ?></th>
                <th></th>
            </tr>
        </thead>
        <tbody>
            <?php foreach ($list as $info) : ?>
                <tr>
                    <td>
                        <a href=" >/assign/conf?id=<?php echo $info->id; ?>&back_to=assign_index"><?php echo $info->id; ?></a >
                        <?php if ($info->lesson_reserve_request_id) : ?>
                            <br>[仮]No.<?php echo $info->lesson_reserve_request_id; ?>
                        <?php endif; ?>
                    </td>
                    <td><a href="<?php echo get_url_top(); ?>/client/conf?id=<?php echo $info->client_id; ?>"><?php echo $info->client_name; ?></a ></td>
                    <td><a href="<?php echo get_url_top(); ?>/app/conf?id=<?php echo $info->app_id; ?>" target="_blank"><?php echo $info->app_id; ?></a ></td>
                    <td><a href="<?php echo get_url_top(); ?>/app/conf?id=<?php echo $info->app_id; ?>" target="_blank"><?php echo $info->lesson_name; ?></a ></td>
                    <td><?php echo $info->date; ?></td>
                    <td><?php echo $i

、可否请教一个样式 比如在csv之中去除掉某一行td但在页面上依然显示
尝试了点击csv按钮判断之类的没有效果。
感谢大家的帮助与解答

  • 写回答

2条回答 默认 最新

  • CSDN专家-showbo 2022-03-31 15:29
    关注

    将表格内容的table clone一份,然后操作克隆的表格,删除不需要的列后再获取克隆表格的html赋值给data容器,示例如下,删除第一和第三列

    img

    
    <form class="mt20" method="post" action="">
        <input id="data_html" type="hidden" name="data">
        <input type="hidden" name="action" value="csv_out">
        <input class="btn btn-primary" type="submit" value="CSVで保存">
    </form>
    <div id="div_html">
        <table class="table">
            <thead>
                <tr>
                    <th>1</th>
                    <th>2</th>
                    <th>3</th>
                    <th><?php echo $word->get('app_name'); ?></th>
                    <th><?php echo $word->get('ymd'); ?></th>
                    <th><?php echo $word->get('time'); ?></th>
                    <th><?php echo $word->get('lesson_form'); ?></th>
                    <th><?php echo $word->get('lesson_type'); ?></th>
                    <th><?php echo $word->get('classroom'); ?></th>
                    <th><?php echo $word->get('tutor'); ?></th>
                    <th></th>
                </tr>
            </thead>
            <tbody>
                <?php foreach ($list as $info) : ?>
                <tr>
                    <td>
                        1
                    </td>
                    <td>2</td>
                    <td>3</td>
                    <td><a href="<?php echo get_url_top(); ?>/app/conf?id=<?php echo $info->app_id; ?>" target="_blank"><?php echo $info->lesson_name; ?></a></td>
                    <td><?php echo $info->date; ?></td>
                    <td><?php echo $i</td>
    
                </tr>
            </tbody>
        </table>
    </div>
    
    <script src="https://g.csdnimg.cn/??lib/jquery/1.12.4/jquery.min.js"></script>
    <script>
        var table = $('#div_html>table').clone();
    
        var col = 1;//删除第一列,注意nth-child下标从1开始
        table.find(`tr th:nth-child(${col}),tr td:nth-child(${col})`).remove()
    
        col = 2;//删除原来的第3列,由于上面的删除已经更改过dom,原来的第三列变第二列,所以是2
        table.find(`tr th:nth-child(${col}),tr td:nth-child(${col})`).remove()
    
    
        var html = table[0].outerHTML
        $('#data_html').html(html)
        console.log(html)
    </script>
    
    

    img


    有其他问题可以继续交流~

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 4月8日
  • 已采纳回答 3月31日
  • 修改了问题 3月31日
  • 创建了问题 3月31日

悬赏问题

  • ¥15 基于双目测规则物体尺寸
  • ¥15 wegame打不开英雄联盟
  • ¥15 公司的电脑,win10系统自带远程协助,访问家里个人电脑,提示出现内部错误,各种常规的设置都已经尝试,感觉公司对此功能进行了限制(我们是集团公司)
  • ¥15 救!ENVI5.6深度学习初始化模型报错怎么办?
  • ¥30 eclipse开启服务后,网页无法打开
  • ¥30 雷达辐射源信号参考模型
  • ¥15 html+css+js如何实现这样子的效果?
  • ¥15 STM32单片机自主设计
  • ¥15 如何在node.js中或者java中给wav格式的音频编码成sil格式呢
  • ¥15 不小心不正规的开发公司导致不给我们y码,