crenn 2021-02-25 08:01 采纳率: 100%
浏览 198
已采纳

如何在弹出的层中自动加载对应目录中的.json文件?

使用 bootstrap4.6 ,点击以下代码:

<li data-toggle="modal" data-target="#n001">001</li>

弹出以下层,自动加载对应的 n001.json 文件,并以表格形式显示?

 

<div class="modal fixed-left fade" id="n001" tabindex="-1" aria-hidden="true" role="dialog">
    // 这里加载对应的 json 文件内容
    // 需要格式化为表格 <table> 形式
</div>
  • 写回答

5条回答 默认 最新

  • Go 旅城通票 2021-02-26 14:03
    关注

    其实使用一个层就行,也不用创建那么多,用js变量缓存对应的数据起来更新层就行,看http://www.w3dev.cn/demo/bootstrap-modal/ 这个在线示例

    <link href="https://cdn.staticfile.org/twitter-bootstrap/4.6.0/css/bootstrap.min.css" rel="stylesheet" type="text/css" />
    <script src="https://cdn.staticfile.org/jquery/2.1.1/jquery.min.js"></script>
    <script src="https://cdn.staticfile.org/twitter-bootstrap/4.6.0/js/bootstrap.min.js"></script>
    <!--新增data-json存储json名称-->
    <li data-toggle="modal" data-target="#n001" data-json="n001">001</li>
    <li data-toggle="modal" data-target="#n001" data-json="n002">002</li>
    <li data-toggle="modal" data-target="#n001" data-json="n003">003</li>
    <div class="modal fade" id="n001" tabindex="-1" role="dialog"><div class="modal-dialog"></div></div>
    <script>
        var cache = {};
        $('[data-toggle="modal"]').click(function () {
            var el = $(this), target = el.attr('data-target'), elTarget = $(target).find('.modal-dialog'), json = el.attr('data-json');
            if (!cache[json]) {//未加载json数据用ajax加载
                $.getJSON(json+ '.json',//注意json路径
                    function (d) {
                        var s = '<div style="background:#fff"><table class="table table-bordered table-striped"><tr><th>NO</th><th>Text</th></tr>';
                        s += $(d).map(function () { return '<tr><td>' + this.no + '</td><td>' + this.text + '</td></tr>' }).get().join('')
                        s += '</table></div>'
    
                        cache[json] = s;//缓存数据
                        elTarget.html(s);
                    });
            }
            else elTarget.html(cache[json] );//加载缓存
        });
    </script>

     

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

报告相同问题?

悬赏问题

  • ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
  • ¥15 CSAPPattacklab
  • ¥15 一直显示正在等待HID—ISP
  • ¥15 Python turtle 画图
  • ¥15 关于大棚监测的pcb板设计
  • ¥15 stm32开发clion时遇到的编译问题
  • ¥15 lna设计 源简并电感型共源放大器
  • ¥15 如何用Labview在myRIO上做LCD显示?(语言-开发语言)
  • ¥15 Vue3地图和异步函数使用
  • ¥15 C++ yoloV5改写遇到的问题