Bootstrap-editable使用datetime类型报错undefined

想做一个可以编辑的表格,使用的是bootstrap2以及相应版本的bootstrap-editable,但是当editable中type为datetime的时候会出现以下报错。

部分代码:

 $('#itemTable').bootstrapTable({
             showRefresh: true,
            columns: [{
                field: 'id',
                checkbox:true,
            },  {
                field: 'start_time',
                title: '起始时间',
                editable: {
                    type: 'datetime',
                    mode: "inline", 
                    validate: function (v) {
                        if (!v) return '起始时间不能为空';
                    }
                },
                sortable:true,
            }],
            data: [{
                    id: 2,
                    start_time: '2016/11/22',    
                }, ]
        });

报错内容:

bootstrap-editable.js:6481 Uncaught TypeError: Cannot read property 'DPGlobal' of undefined
    at DateTimeField.initPicker (bootstrap-editable.js:6481)
    at new DateTimeField (bootstrap-editable.js:6677)
    at Object.createInput (bootstrap-editable.js:859)
    at Editable.init (bootstrap-editable.js:1498)
    at new Editable (bootstrap-editable.js:1477)
    at HTMLAnchorElement.<anonymous> (bootstrap-editable.js:2139)
    at Function.each (jquery-2.1.4.min.js:2)
    at n.fn.init.each (jquery-2.1.4.min.js:2)
    at n.fn.init.$.fn.editable (bootstrap-editable.js:2125)
    at Object.<anonymous> (bootstrap-table-editable.js:114)
initPicker @ bootstrap-editable.js:6481
DateTimeField @ bootstrap-editable.js:6677
createInput @ bootstrap-editable.js:859
init @ bootstrap-editable.js:1498
Editable @ bootstrap-editable.js:1477
(anonymous) @ bootstrap-editable.js:2139
each @ jquery-2.1.4.min.js:2
each @ jquery-2.1.4.min.js:2
$.fn.editable @ bootstrap-editable.js:2125
(anonymous) @ bootstrap-table-editable.js:114
each @ jquery-2.1.4.min.js:2
BootstrapTable.initBody @ bootstrap-table-editable.js:109
BootstrapTable.init @ bootstrap-table.js:572
BootstrapTable @ bootstrap-table.js:277
(anonymous) @ bootstrap-table.js:3066
each @ jquery-2.1.4.min.js:2
each @ jquery-2.1.4.min.js:2
$.fn.bootstrapTable @ bootstrap-table.js:3043
(anonymous) @ 1&-1&-1&1:620

图片描述

网上有说把源码中的datetimepicker改成bdatepicker就可以了,但是我改了之后上面的报错是消失了,但是又出现了新的报错。

二次报错:

Uncaught TypeError: this.$tpl.datetimepicker is not a function
    at DateTimeField.render (bootstrap-editable.js:6688)
    at EditableForm.render (bootstrap-editable.js:91)
    at HTMLDivElement.<anonymous> (bootstrap-editable.js:410)
    at Function.each (jquery-2.1.4.min.js:2)
    at n.fn.init.each (jquery-2.1.4.min.js:2)
    at n.fn.init.$.fn.editableform (bootstrap-editable.js:401)
    at Inline.renderForm (bootstrap-editable.js:1073)
    at Inline.show (bootstrap-editable.js:1119)
    at Editable.show (bootstrap-editable.js:1802)
    at Editable.toggle (bootstrap-editable.js:1824)
render @ bootstrap-editable.js:6688
render @ bootstrap-editable.js:91
(anonymous) @ bootstrap-editable.js:410
each @ jquery-2.1.4.min.js:2
each @ jquery-2.1.4.min.js:2
$.fn.editableform @ bootstrap-editable.js:401
renderForm @ bootstrap-editable.js:1073
show @ bootstrap-editable.js:1119
show @ bootstrap-editable.js:1802
toggle @ bootstrap-editable.js:1824
(anonymous) @ bootstrap-editable.js:1547
f @ jquery-2.1.4.min.js:2
dispatch @ jquery-2.1.4.min.js:3
r.handle @ jquery-2.1.4.min.js:3

图片描述

觉得一直改源代码里面的内容不是个真正的解决方法,所以想来问问各位大佬要如何是好,跪谢。

阅读 5.3k
1 个回答
新手上路,请多包涵

需要引入datetimepicker资源文件
datapicker/bootstrap-datetimepicker.min.css

datapicker/bootstrap-datetimepicker.min.js
datapicker/bootstrap-datetimepicker.zh-CN.js

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题