Javascript ajax加载对话框中的Jquery UI日历

Javascript ajax加载对话框中的Jquery UI日历,javascript,jquery,jquery-ui,Javascript,Jquery,Jquery Ui,我有一个onclick=“open\u dialog”链接,它打开了jquery ui对话框。它使用ajax加载其内容,并使用ajax加载另一个内容test2.php,该内容的输入标记为class=“calendar”。问题是,若我点击输入,它将不会显示任何日历。也许有人知道为什么 function open_dialog() { var url = 'test.php'; var dialog; if ($('#test').length) { dia

我有一个onclick=“open\u dialog”链接,它打开了jquery ui对话框。它使用ajax加载其内容,并使用ajax加载另一个内容test2.php,该内容的输入标记为class=“calendar”。问题是,若我点击输入,它将不会显示任何日历。也许有人知道为什么

function open_dialog() {
    var url = 'test.php'; 
    var dialog;
    if ($('#test').length) {
        dialog = $('#test');
    } else {
        dialog = $('<div id="test" class="type_' + type + '" style="display:hidden;"></div>').appendTo('body');
    }
    dialog.load(
        url, 
        {},
        function (responseText, textStatus, XMLHttpRequest) {
            dialog.dialog({
                open: function(event, ui) {
                    $('.calendar').datepicker();
                }
            });
        }
    );
    return false;
}
函数打开_对话框(){
var url='test.php';
var对话框;
如果($('#测试')。长度){
对话框=$(“#测试”);
}否则{
dialog=$('').appendTo('body');
}
dialog.load(
网址,
{},
函数(responseText、textStatus、XMLHttpRequest){
对话({
打开:功能(事件、用户界面){
$('.calendar').datepicker();
}
});
}
);
返回false;
}

首先,您应该找到问题所在? 1) 首先添加
警报(“打开对话功能的第一行”)并检查是否呼叫。

2) 第二个检查是日历将自己的html内容添加到html页面。可能是添加了自我内容,但某些css样式将其隐藏。

抱歉,但我找到了答案: 我必须在第二次ajax调用中调用calendar,如下所示:

$('#content_in_test_dialog').load(
    'test2.php', 
    function(response, status, xhr) {
        $('.calendar').datepicker();
    }
);