jquery datepicker不会在不可见的asp:面板中显示

时间:2014-04-27 11:17:59

标签: jquery asp.net

我有一个asp:面板,默认情况下是不可见的。 这个面板是一个覆盖窗口,需要一些输入。

我想在此面板的文本框中添加jquery datepicker 但是因为这个面板在默认情况下是不可见的,并且在单击按钮后可见 datepicker不起作用.. 当我改变面板的可见性时,每件事情都可以正常工作!

我的代码:

<script type="text/javascript">
    $(document).ready(function date () {

        $(".test").datepicker(
            { showOn: 'button',
            buttonImage: '../Script/jquery.ui.datepicker1.8.14-cc/styles/images/calendar.png',
            buttonImageOnly: true});


    });
</script>

3 个答案:

答案 0 :(得分:0)

如果您要更改可见性服务器端,则需要将其保留为可见并使用css display:none控制此类事件,因为它实际上会从DOM中删除您的面板内容。

或者,如果我没有弄错,你可以在WebForms中执行此操作:

Panel.CssClass += "hide-me"

和css类应该是:

.hide-me {
    display:none;
}

答案 1 :(得分:0)

这个问题发生在ajax脚本管理器和updatepanel上 当我删除ajax脚本管理器时,每件事都正常工作 我必须使用以下命令在页面加载中注册datepicker脚本:  ScriptManager.RegisterClientScriptBlock 现在我试着解决我的问题......

答案 2 :(得分:0)

我将脚本更改为:

<script type="text/javascript">

    function pageLoad(sender, args) 
    {
        $(".test").datepicker(
            { showOn: 'button',
                buttonImage: '../Script/jquery.ui.datepicker1.8.14-cc/styles/images/calendar.png',
                buttonImageOnly: true
            });

    }

</script>

所以现在一切都还可以!