jquery datepicker在IE9中重新开启

时间:2012-03-20 18:11:31

标签: jquery jquery-ui

在IE9中看到了一个令人讨厌的datepicker行为。 datepicer确实有效,但在弹出日历上单击所选日期后会再次弹出。用户必须单击远离弹出日历才能将其关闭。以下是事件序列:

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

2)弹出日历

3)用户点击所需日期

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

5)用户必须点击日历弹出窗口

6)日历弹出窗口关闭

这不会发生在Chrome或FF中。在那里,一旦点击了所选日期,日历弹出窗口就会关闭并保持关闭,除非用户再次点击日历文本框。

听起来我设置了datepicker错误或这是一个错误吗?

Datepicker代码:

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

在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

感谢您的帮助。

最诚挚的问候,

戴夫

1 个答案:

答案 0 :(得分:1)

您正在创建两次日期选择器(一旦DOM加载并且在您的AJAX调用之后)。尝试从AJAX调用中删除.datepicker属性。

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