JQuery时间选择器没有第二次工作

时间:2016-07-13 14:04:33

标签: javascript jquery ajax

我有一个模态对话框,其中包含通过ajax加载的表单。在表单中是一个使用jquery timepicker填充的tim字段。如果我打开一次对话框,一切运行良好。如果我第二次加载对话框而不刷新页面时间戳不起作用

这是我的代码

<asp:TextBox runat="server" ReadOnly="true" CssClass="form-control timepicker" ClientIDMode="Static" ID="txtTime" />
     $(document).ready(function () {
        $("#txtTime").timepicker({
             twentyFour: false, title:'Time', showSeconds: false
        });
    });

1 个答案:

答案 0 :(得分:0)

由于您的问题本身可能不太明确,我会尝试提供两种可能解决您问题的方案。

如果要替换DOM中的元素......

如果现有元素被替换或删除并重新添加到DOM,您需要确保重新连接时间戳函数以定位该元素的最新实例。 DOM

// Open your dialog here and re-write your elements

// This will target the new element that should now be present in the DOM 
$("#txtTime").timepicker({ twentyFour: false, title:'Time', showSeconds: false });

如果不知道如何显示或处理对话框及其内容的确切细节,可能很难确定处理此问题的最佳方法,但每次显式实例化选择器应确保它按预期工作。

如果您实际上是在发布页面并重新加载...

在您提交表单或刷新页面的情况下,值得注意的是您的时间戳在此过程中不会持久存在,并且需要在页面最初加载时重新实例化:

$(function(){
      // This will ensure that when the page loads, your timepicker works
      $('#txtTime').timepicker({ ... });
});