layuiAdmin实现商品图片列表循环遍历与动态加载

作者:资源驿站

时间:2026-10-23

浏览:550

本文介绍在layuiAdmin后台框架中,如何通过Ajax请求后端接口获取商品数据,并利用laytpl模板引擎在页面中循环遍历渲染商品图片列表。同时详细说明了a标签中lay-href属性的作用,以及如何通过修改href属性实现页面刷新跳转,确保前端交互与后端数据的高效配合。

文章目录

构建主页面与数据容器

首先构建主页面结构,定义用于展示商品列表的容器区域。在HTML中引入layuiAdmin的相关样式与脚本,并预留出用于渲染动态内容的div元素,例如id为view的容器,以便后续通过JavaScript动态插入数据。


<div class="layui-fluid layadmin-cmdlist-fluid">

  <script id="demo2" type="text/html">

   <div class="layui-col-md2 layui-col-sm4">
    <div class="cmdlist-container">
     <a lay-href="/books/add" rel="external nofollow" >
      <img src="{{ layui.setter.base }}style/res/template/portrait.png">
     </a>
     <a href="javascript:;" rel="external nofollow" rel="external nofollow" >
      <div class="cmdlist-text">
       <p class="info">新增</p>
      </div>
     </a>
    </div>
   </div>

    {{# layui.each(d.list, function(index, item){ }}
     <div class="layui-col-md2 layui-col-sm4">
      <div class="cmdlist-container">

       {{# if(item.cover_img == ""){ }}
        <a lay-href="/books/edit/bookId_edit={{ item.book_serial_num }}" rel="external nofollow" rel="external nofollow" >
         <img src="{{ layui.setter.base }}style/book/default.jpg">
        </a>
       {{# } else { }}
        <a lay-href="/books/edit/bookId_edit={{ item.book_serial_num }}" rel="external nofollow" rel="external nofollow" >
         <img src="{{ item.cover_img }}">
        </a>
       {{# } }}

       <a href="javascript:;" rel="external nofollow" rel="external nofollow" >
        <div class="cmdlist-text">
         <p class="info">{{item.main_title}}</p>
         <div class="price">
          <b>{{item.strSignStatus}}</b>
         </div>
        </div>
       </a>
      </div>
     </div>
    {{# }); }}
    {{# if(d.list.length === 0){ }}
    无数据
    {{# } }}
  </script>
 <div id="view" class="layui-row layui-col-space30"></div>
</div>

Ajax请求与模板渲染实现

接下来,利用Ajax技术向服务器发送请求以获取动态数据。通过admin.req方法指定目标URL(如/books/booklist),在success回调函数中接收返回的商品数据。获取数据后,使用laytpl模板引擎解析预定义的HTML模板,将数据与模板结合生成最终的HTML字符串,并赋值给页面容器的innerHTML,从而完成数据的动态填充与展示。


var data = {}

 admin.req({
  url: "/books/booklist"
  ,success: function(res){
   data = res.data;
   var getTpl = demo2.innerHTML
    ,view = document.getElementById('view');
   laytpl(getTpl).render(data, function(html){
    view.innerHTML = html;
   });
  }
 })

配置页面跳转与刷新机制

需要注意的是,主页面中a标签的lay-href属性用于实现无刷新页面的局部跳转。如果业务需求要求点击链接后必须刷新页面并跳转到新地址,则需要对链接的href属性进行修改,使其不再依赖lay-href的异步加载机制。


 <a href="./#/books/add" rel="external nofollow" >

具体修改方式是在原有的链接路径前添加./#前缀。例如,将原本的lay-href属性值调整为类似./#/books/add的形式,这样浏览器会将其视为普通的URL跳转,从而触发完整的页面刷新请求。

以上即为在layuiAdmin中实现商品图片列表循环遍历及动态加载的完整方法。通过合理运用Ajax与模板引擎,可以高效地实现前后端数据交互,同时根据实际需求灵活配置页面跳转行为,希望这些内容能为开发者提供有价值的参考。

实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章