出现的问题
当在使用layui模块时,引入了JQuery,而layui与JQuery版本冲突导致出现此错误。
这是由于在使用 layer 之类的模块时,它会首先判断你的页面是否已经引入了JQuery,如果没有,则加载内部的jQuery模块,如果有,则不会加载。
此时layui加载了我进入的jquery.min.js,但由于这个版本和layui不匹配,导致无法初始化table。
解决方法
根据layui官网的说法,可以想到的解决方案就是让layui加载其自身携带的jquery即可,无需去判断我们的程序是否引入了JQuery。因此我们需要改动layui.js的代码。
找到语句:
e="string"==typeof e?[e]:e,window.jQuery&&jQuery.fn.on&&(y.each(e,function(t,o){"jquery"===o&&e.splice(t,1)}),layui.jquery=layui.$=jQuery);
将其改下面语句并保存:
e="string"==typeof e?[e]:e,window.jQuery;
刷新界面,发现错误消失: