最近接触了一个项目,要实现一个轮播图的功能,因为是在原有的项目上进行二次开发,项目前端用的是layui框架,楼主是后台方向,没怎么接触过前端,在用layui实现轮播图时,发现异步从后台获取数据,但是轮播图片不显示,显示如下:
用浏览器调试发现,& lt; div carousel-item="祝辞下面已经有几个& lt; div>了,说明是有数据的。那怎么不显示呢?后来发现是在获取数据之前,页面已经初始化了,当然不能显示啦,这是时候需要在获取数据填充html时,回调重载(选项)方法。
<强>先贴上HTML代码:强>
& lt; div类=" layui-carousel " id=" test1 " lay-filter=皌est1”比; & lt; div carousel-item=薄氨? & lt;脚本id="图" type=" text/html "比; 这里是动态遍历的代码 & lt;/script> & lt;/div> & lt;/div>
<强>获取数据代码的反例示例:强>
layui。使用(“旋转木马”,函数(){ var旋转木马=layui.carousel;//建造实例 carousel.render ({ elem:“# test1” 宽度:“100%”//设置容器宽度 箭头:“总是”//始终显示箭头//动画:“上下按钮”//切换动画方式 });//这里是用jQuery异步获取数据的大致代码 美元。get("请求的URL”、功能(数据){ var tpl=$(" #图表”). html (); laytpl (tpl)。呈现(数据、函数(html) { $ (" # test1)定格(div) . html (html); }); }); });
<>强解决问题的代码示例:强>
layui。使用(“旋转木马”,函数(){ var旋转木马=layui.carousel;//建造实例 var ins=carousel.render ({ elem:“# test1” 宽度:“100%”//设置容器宽度 箭头:“总是”//始终显示箭头//动画:“上下按钮”//切换动画方式 });//这里是用jQuery异步获取数据的大致代码 美元。get("请求的URL”、功能(数据){ var tpl=$(" #图表”). html (); laytpl (tpl)。呈现(数据、函数(html) { $ (" # test1)定格(div) . html (html);//下面这步很重要 ins。重载({elem:“# test1 '});//重置轮播图 }); }); });
至于为啥用
$ (" # test1)定格(div) . html (html);
因为& lt; div carousel-item="祝辞加idname会报错,所以没用下面这种方式填充html
$ (" # idname ") . html (html);
以上这篇解决layui轮播图有数据不显示的情况就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。