Несколько DatePicker не работает должным образом

0

Я пытаюсь использовать несколько datepicker.But его не работает должным образом. Моя проблема в том, когда я нажимаю на текстовое поле для календаря, его загрузка после второго щелчка. В противном случае его работа отлично. Я не могу понять проблему. Я даю код js ниже:

$(".datepicker").on("click",function(){
        $(".datepicker").datepicker(
        {
            dateFormat: "yy-mm-dd",
            onSelect: function (date) 
            { 
              var date = $("#dateNew").val();//alert(date);
              var currDate = new Date();
            }
        });

Любая идея, почему это создает проблему?

  • 0
    Удалить обработчик событий клика. т.е. $(".datepicker").on("click",function(){
  • 0
    Вы можете написать о своей проблеме?
Показать ещё 1 комментарий
Теги:
datepicker

1 ответ

0
Лучший ответ

Вот ваше ядро с некоторыми изменениями:

$(function() {

        $(".datepicker").datepicker(
        {
            dateFormat: "yy-mm-dd",
            onSelect: function (date) 
            { 
              var date = $("#dateNew").val();//alert(date);
              var currDate = new Date();
            }
        });

        var scntDiv = $('#p_scents');
        var i = $('#p_scents p').size() + 1;

        $('#addScnt').live('click', function() {
                $('<p><label for="p_scnts"><input type="text" id="p_scnt" size="20" class="datepicker" name="p_scnt_' + i +'" value="" placeholder="Input Value" /></label> <a href="#" id="remScnt">Remove</a></p>').appendTo(scntDiv);
            $("input[name=p_scnt_" + i +"]").datepicker(
            {
                dateFormat: "yy-mm-dd",
                onSelect: function (date) 
                { 
                  var date = $("#dateNew").val();//alert(date);
                  var currDate = new Date();
                }
            });
                i++;

                return false;
        });

        $('#remScnt').live('click', function() { 
                if( i > 2 ) {
                        $(this).parents('p').remove();
                        i--;
                }
                return false;
        });
});

Вместо создания datapicker после клика я создаю новый, когда вы добавляете новый ввод.

  • 0
    Он работает только для одного текстового поля. Ваш код работает для первого текстового поля. Я использую кнопку «Добавить больше» для загрузки нескольких текстовых полей. Когда я нажимаю кнопку «Добавить больше», создается текстовое поле, ваш код не загружает календарь на секунду один.
  • 0
    Вот моя рабочая ссылка js fiddle ---- ссылка fiddle jsfiddle.net/ZPyyZ/9,
Показать ещё 2 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню