jQuery datepicker возвращает ошибку "inst is null" при загрузке через AJAX - PullRequest
1 голос
/ 04 марта 2010

Я загружаю контент через AJAX-вызов в строку таблицы, добавленную в DOM на лету. Я вызываю функцию выбора даты в моей функции обратного вызова, и календарь показывает нормально. Однако, когда я нажимаю на дату, я получаю сообщение об ошибке: inst is null. Вот мой код:

$(document).ready(function() {
    $(".edit").live("click", function() {
        //Delete previously loaded edit row
        $("#tempEditRow").remove();

        //Get the record id of the row to be edited
        var recordID = $(this).parent("td").parent("tr").attr("id");

        //Add the new row to the document
        $(this).parent("td").parent("tr").after("<tr id=\"tempEditRow\"><td id=\"tempEditCell\" colspan=\"100\"></td></tr>")

        //Get a reference to the new row
        var container = $("#tempEditCell");

        //Populate the container
        populateContainer("/wpm/includes/ajax_editApplication.cfm?id=" + recordID, container);
    });
});

function populateContainer(ajaxUrl, container) {
    //Populate the container
    $.ajax({
        url: ajaxUrl,
        cache: false,
        success: function(html){
            $(container).html(html);
            $('.datepicker').datepicker();
        }
    }); 
}

Я пытался удалить класс hasDatepicker, удалить все ссылки на указатель даты и т. Д., Но ничего не работает. Заранее спасибо за помощь!

Ответы [ 2 ]

5 голосов
/ 22 апреля 2010

У меня была та же ошибка, потому что у меня было два поля ввода DatePicker с одинаковым идентификатором, одно из которых было настроено во время выполнения, а другое через ajax.Дали им уникальный идентификатор и все заработало

0 голосов
/ 25 марта 2010

Попробуйте вызвать datepicker ('destroy') как часть удаления предыдущей строки (сделайте это перед вызовом remove ()).

...