Silent Error в jQuery UI datepicker - PullRequest
       10

Silent Error в jQuery UI datepicker

3 голосов
/ 16 февраля 2011

Я столкнулся с очень странной проблемой.

Я создаю пакет отчетов, и часть его использует библиотеку daterangepicker , чтобы выбрать диапазон дат. Однако во время функции, которая создает все, она просто останавливается, как только добирается до вызова создания $("#date-range-picker").daterangepicker(options). Через некоторое время, отслеживая вызовы через daterangepicker, jQuery и jQueryUI, я обнаружил, что вызов new Date() завершается неудачно с ошибкой RangeError: Maximum call stack size exceeded, и кажется, что код внутри просто хранит ошибку и все еще думает, что это объект Date .

Я протестировал создание новой даты, когда сценарий был там приостановлен, и это вызвало ту же ошибку. Та же самая ошибка происходит после сбоя скрипта. Но не раньше, чем сценарий запускается.

ОБНОВЛЕНИЕ: Я обнаружил проблему, это было повторение включенного сценария daterangepicker.

1 Ответ

0 голосов
/ 19 февраля 2012

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

$(".any_class").live({

     focus: function(){ 
         var id = $(this).attr("id");
        $( "#"+ id ).datepicker({
        numberOfMonths: 1, 
        yearRange: '1960:2020',
        dateFormat: 'dd-mm-yy',
        showButtonPanel: false,
        changeMonth: true,
        changeYear: true,
        onClose: function(){ /*anything on close*/ }

        });
        }  
    });
...