Jquery 在jqgrid中添加日期选择器时获取异常

Jquery 在jqgrid中添加日期选择器时获取异常,jquery,datepicker,jqgrid,Jquery,Datepicker,Jqgrid,我在添加日期选择器时遇到以下异常: Uncaught TypeError: a.getAttribute is not a function at M._attachDatepicker (jquery-ui-core.min.js:489) at Object.<anonymous> (jquery-ui-core.min.js:553) at Function.each (jquery-1.6.2.js:16) at init.each (jque

我在添加日期选择器时遇到以下异常:

Uncaught TypeError: a.getAttribute is not a function
    at M._attachDatepicker (jquery-ui-core.min.js:489)
    at Object.<anonymous> (jquery-ui-core.min.js:553)
    at Function.each (jquery-1.6.2.js:16)
    at init.each (jquery-1.6.2.js:16)
    at init.d.fn.datepicker (jquery-ui-core.min.js:553)
    at Object.dataInit (common.js:1042)
    at h (jquery.jqGrid.min.js:4229)
    at Object.createEl (jquery.jqGrid.min.js:4376)
    at Object.<anonymous> (jquery.jqGrid.min.js:4859)
    at Function.each (jquery-1.6.2.js:16)
_attachDatepicker @ jquery-ui-core.min.js:489

我正在使用JQGrid 4.0.0

如果您想继续使用JQGrid 4.0.0的追溯版本,那么您必须使用jQuery和jQuery UI的追溯版本。错误消息的堆栈显示您试图将jQuery1.6.2与jQGrid4.0.0一起使用。这是不可能的。jQuery 1.6中更改了使用属性和属性的jQuery方法。旧的jqGrid 4.0.0使用
jQuery.attr
而不是
jQuery.prop

简短解释:可以将jqGrid 4.0.0与蒸汽电机进行比较。你不能将蒸汽发动机与柴油、汽油、汽油或电力一起使用

您必须将jQuery降级,使用它的版本为1.4.4或1.5.2,才能使用jqGrid 4.0.0


或者,您可以将jqGrid 4.0.0升级为免费的jqGrid 4.14.0,并从1.7.2开始使用几乎任何版本的jQuery。jQuery的推荐版本为3.2.1、2.2.4或1.12.4。您将能够使用免费的jqGrid 4.14.0和从1.8(例如1.8.24)开始到最新的1.12.1的任何jQuery UI,或者使用Bootstrap 3.x或4.0.0-alpha6。你的意思可能是jqGrid 4.0.0。您使用哪个版本的jQuery UI?错误堆栈显示您尝试使用jQuery 1.6.2,该版本不能与复古版jqGrid 4.0.0一起使用。它对于jqGrid 4.0.0来说太新了。如果您想(必须)继续使用jqGrid 4.0.0,那么您必须在1.6之前的版本中使用jQuery。您也必须只使用jQuery UI的追溯版本。对不起,JQGRID 4.0.0我使用了您使用的jQuery UI的哪个版本
datepicker
是jqueryui的小部件。无论如何,您必须将jQuery降级到1.4.4或1.5.2。您是否尝试降级到jQuery?您现在遇到了哪一个错误?我使用的是JQuery 1.6.0我重复一遍,您不能使用JQuery 1.6,因为它在处理属性和属性时包含许多更改。追溯版本jqGrid 4.0.0必须与追溯版本的jQuery和jQuery UI一起使用。这就像你必须使用柴油一样,如果你的车有柴油发动机。你不能给汽车加油,也不能用电开车。
{
            name:'billDate',
            index:'billDate',
            formatter: 'date',
            sortable:false,
            align:'center',
            editable:true,
            edittype:"text",
            hidden:'true',
            editoptions: {
                size: 20,
                maxlengh: 10,
                dataInit: function (element) {
                    $(this).datepicker({
                        dateFormat: 'yy-mm-dd',
                        constrainInput: false,
                        showOn: 'button',
                        buttonText: '...'
                    });
                }
            },
            editrules: {
                date: true,
                minValue: 0
            },
            formatoptions: {
                newformat: "Y-m-d"
            }
        }