微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

未捕获的类型错误:$(...).jsGrid 不是函数

如何解决未捕获的类型错误:$(...).jsGrid 不是函数

在我的页面中,我正在尝试创建一个 jsgrid 表,我认为没有错,因为我以正确的方式导入了内容,但它给了我这个;

未捕获的类型错误:$(...).jsGrid 不是函数错误

是否有什么问题,因为我没有看到初始化表的任何错误

这是我的代码

<script src="assets/js/jquery.min.js"></script>
<script src="assets/js/bootstrap.js"></script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jsgrid/1.5.3/jsgrid.min.js"></script>
<script src="assets/vendors/js/vendor.bundle.base.js"></script>
<script src="assets/vendors/js/vendor.bundle.addons.js"></script>
<script>
    $("#brands_table").html("asd");
    $("#brands_table").jsGrid({
        width: "100%",height: "400px",filtering: true,inserting:true,editing:true,sorting:true,paging:true,autoload:true,pageSize:10,pageButtonCount:5,deleteConfirm:"Silmek istediğinize emin misiniz?",controller:{
            loadData: function (filter) {
                return $.ajax({
                    type:"GET",url:"assets/PHP/getbrands.PHP",data:filter
                });
            },},fields:[
            {
                name:"id",type:"hidden",css:'hide'
            },{
                name:"name",type:"text",width:150,validate:"required"
            },{
                type: "control"
            }
        ]
    });
</script>

解决方法

假设您的文件全部正确,我建议您将 jquery 函数调用包装在 document.ready 中。这样它们只会在 DOM 准备好通过 Javascript 进行编辑时运行。

<script>
$(document).ready(function(){
    $("#brands_table").html("asd");
    $("#brands_table").jsGrid({
        width: "100%",height: "400px",filtering: true,inserting:true,editing:true,sorting:true,paging:true,autoload:true,pageSize:10,pageButtonCount:5,deleteConfirm:"Silmek istediğinize emin misiniz?",controller:{
            loadData: function (filter) {
                return $.ajax({
                    type:"GET",url:"assets/php/getbrands.php",data:filter
                });
            },},fields:[
            {
                name:"id",type:"hidden",css:'hide'
            },{
                name:"name",type:"text",width:150,validate:"required"
            },{
                type: "control"
            }
        ]
    });
    });
</script>
,

问题是

<script src="assets/vendors/js/vendor.bundle.base.js"></script>

这些脚本的函数名称与 jsGrid 函数名称重叠,因此阻止浏览器/javascript 正确读取函数,我将这些脚本移至需要它们的位置,因此现在没有问题,感谢您的所有帮助和努力。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。