jquery日期选择器在IE9中重新打开

jquery日期选择器在IE9中重新打开,jquery,jquery-ui,Jquery,Jquery Ui,我在IE9中看到了一个日期选择器的anoying行为。datepicer确实可以工作,但在弹出日历上单击所选日期后,它会再次弹出。用户必须单击弹出日历以外的位置才能关闭它。以下是事件的顺序: 1) 用户单击日期选择器文本框 2) 日历弹出 3) 用户点击所需日期 4) 在文本框中插入日期,日历弹出窗口立即再次打开 5) 用户必须单击日历弹出窗口以外的位置 6) 日历弹出窗口关闭 这在Chrome或FF中不会发生。在此处,单击选定日期后,日历弹出窗口将关闭并保持关闭状态,除非用户再次单击日历文本框

我在IE9中看到了一个日期选择器的anoying行为。datepicer确实可以工作,但在弹出日历上单击所选日期后,它会再次弹出。用户必须单击弹出日历以外的位置才能关闭它。以下是事件的顺序:

1) 用户单击日期选择器文本框

2) 日历弹出

3) 用户点击所需日期

4) 在文本框中插入日期,日历弹出窗口立即再次打开

5) 用户必须单击日历弹出窗口以外的位置

6) 日历弹出窗口关闭

这在Chrome或FF中不会发生。在此处,单击选定日期后,日历弹出窗口将关闭并保持关闭状态,除非用户再次单击日历文本框

这听起来像是我把日期选择器设置错了,还是这是一个bug

日期选择器代码:

$(document).ready(function() {
    $("input:submit, button").button();
    $("#VNH").css("color", "#006600");
    $(".datepicker").datepicker({ 
        dateFormat: 'yy-mm-dd'
    });
    $("#tools_dialog").css("visibility", "hidden");
});
对于after ajax:

$("#SNH").live('click', function() {
    var request = $.ajax({
        url: "news.php",
        type: "GET",
        success: function(html){
            $("#topcontainer").html(html);
            $( ".datepicker" ).datepicker({ 
                dateFormat: 'yy-mm-dd'
            });
        }   
    });
});
使用jquery-1.6.2.min.js和jquery-ui-1.8.15.custom.min.js

谢谢你的帮助

致以最良好的祝愿


Dave

您将创建两次日期选择器(加载DOM之后和AJAX调用之后)。尝试从AJAX调用中删除.datepicker属性

这一行:
$(“.datepicker”).datepicker({dateFormat:'yy-mm-dd'})

如果没有ajax回调,datepicker根本无法工作。它必须在阿贾克斯之后反弹。我错了吗?如果我从AJAX调用中删除.datepicker属性,我仍然会得到重复的弹出行为,并且在AJAX调用后datepicker不再工作(单击文本框时不会发生任何事情)。