【问题标题】:Jquery datepicker is not working on jquery dialog with dynamic contentsJquery datepicker 不适用于具有动态内容的 jquery 对话框
【发布时间】:2013-09-07 12:22:03
【问题描述】:

我有两个jsp页面,一个是main.jsp,另一个是dialog.jsp,在main.jsp中我调用java脚本函数openPopup(url, title)打开对话框并加载内容来自给定 url 的对话框。

这是我的代码。
ma​​in.jsp

<div id="dialogDiv"></div>
<div>
     <a onclick='openPopup("/WEB-INF/views/template/dialog.jsp", "Add Address")' title="add value"></a>
</div>


dialog.jsp

   <div class="loaddiv">
       <form:form method="POST" commandName="address" id="dialogForm">        
          <form:input id="livingSince" path="livingSince" cssClass="datepicker"/>
       </form:form>
   </div>


common.js

$(function(){    
$( ".datepicker" ).datepicker({
    changeMonth: true,
    changeYear: true,
    showButtonPanel: true,
    showAnim: 'fold'
});     

});

//for pop up
function openPopup(url, title) { 
$("#dialogDiv").load(url + " .loaddiv").dialog({
    position: 'center',
    modal: true,
    resizable: true,
    bgiframe: true,
    autoOpen: true,
    //height: 450,
    width: 500,
    title: title,
    buttons: {
        Save: function () {
            $("#dialogForm").submit();
            $("#dialogDiv").dialog('close');
        //$("#dialogDiv").html('');
        },
        Cancel: function () {
            $("#dialogDiv").dialog('close');
        }
    }
   });    
}


现在我的问题是单击输入文本字段后,日期选择器没有显示在对话框中。即使它在简单的 jsp 页面上完美运行,但在对话框(弹出)上却没有。
我也尝试了这个解决方案,但它没有发生在我身上。 link

【问题讨论】:

  • dialog.jsp中是否包含datepicker js文件?
  • 是的,它包含在内,并且在简单的 jsp 页面上工作正常

标签: javascript jquery jsp datepicker


【解决方案1】:

我也在加载动态内容。我正在使用时间选择器而不是日期选择器。如果我动态加载内容(使用时间选择器),时间选择器将无法工作,这让我感到非常沮丧。

我通过在每次加载模式时调用一个方法解决了这个问题。在这个方法中,我加载了动态内容;然后(再次)我重新注册时间选择器。我附上了我的代码图像,显示了这是如何完成的。它现在运行良好。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-03-26
    • 1970-01-01
    • 1970-01-01
    • 2015-08-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多