MaterializeCSS datetime picker

382
08 августа 2017, 17:39

Здравствуйте. Пытаюсь сделать datetime picker для MaterializeCSS, поскольку нативного нет.

Вот форма:

<form class="form-horizontal" method="post">
    {% csrf_token %}
    {{ job_form|crispy }}
    <input id="date" type="text">
    <input id="time" type="text"> 
    <div id="outlet"></div>
    <div class="control-group">
        <div class="controls">
            <button type="submit" class="btn">Create</button>
        </div>
    </div>
</form>

Вот jQuery скрипт:

var datepicker = $('#date').pickadate({
        container: '#outlet',
        onSet: function(item) {
            if ( 'select' in item ) setTimeout( timepicker.open, 0 )
        }
    }).pickadate('picker')
var timepicker = $('#time').pickatime({
        container: '#outlet',
        onRender: function() {
            $('<button>back to date</button>').
                on('click', function() {
                    timepicker.close()
                    datepicker.open()
                }).prependTo( this.$root.find('.picker__box') )
        },
        onSet: function(item) {
            if ( 'select' in item ) setTimeout( function() {
                $datetime.
                    off('focus').
                    val( datepicker.get() + ' @ ' + timepicker.get() ).
                    focus().
                    on('focus', datepicker.open)
            }, 0 )
        }
    }).pickatime('picker')
var $datetime = $('.datetimeinput').
    on('focus', datepicker.open).
    on('click', function(event) { event.stopPropagation(); datepicker.open() })

Проблема заключается в том, что если я в консоли ввожу datepicker, то вывод такой:

Object { constructor: x(), $node: Object[1], start: start(), render: render(), stop: stop(), open: open(), close: close(), clear: clear(), set: set(), get: get(), ещё 5… }

Но, если я ввожу timepicker, то вывод такой:

Object [ <input#time.validate> ]

Вот в этом куске кода:

var datepicker = $('#date').pickadate({
        container: '#outlet',
        onSet: function(item) {
            if ( 'select' in item ) setTimeout( timepicker.open, 0 )
        }
    }).pickadate('picker')

по причинам описанным выше, не срабатывает timepicker.open

Какие могут быть причины такого результата? Где была допущена ошибка?

READ ALSO
Подключение JS к MySQL

Подключение JS к MySQL

Мне нужно подключить JS к MySQLТо есть с помощью javascript добавлять, считывать или удалять элементы таблици в MySQL

322
Сравнить даты js

Сравнить даты js

Всем приветЕсть строка с записью даты:

562
Как запретить отправку формы если не правильно введена капча? [требует правки]

Как запретить отправку формы если не правильно введена капча? [требует правки]

В конце формы есть поле для капчиКак сделать, что бы если капча введена не правильная форма не отправлялась ? какой то параметр задать наверно...

253