2013-06-27 46 views
1

我試過彈出窗口內的日曆。我彈出一個文本框。點擊彈出窗口,日曆應該會出現。以下是我試過的代碼。點擊文本框不會獲取日曆。日曆裏面的jquery彈出

/*cal.jsp*/ 
    <form id="cal"> 
     <table> 
     <tr> 
     <td> 
     <div id="dialog" title="Details" > 
     <input id="Picker" name="Picker" style="visibility:hidden;" type="text"> 
     </div> 
      </td> 
     </tr> 
     </table> 
     </form> 
    /*cal.js*/ 
    function dialogFunction() 
    { 
     this.cal['Picker'].style.visibility='visible'; 
       $("#dialog").dialog({ 
        buttons:{ 
         Dispatch:function(){ 

         } 
        } 
       }); 
    } 
/*outside ondocument ready as I don't need it onload of page*/ 
$("#Picker").click(function(){ 

    $(function() { 
     var pickerOpts = { 
         dateFormat:"dd-mm-yy" 
        }; 
     $("#Picker").datepicker(pickerOpts); 
     }); 
}); 

當我點擊文本框時,根本沒有看到日曆彈出窗口。任何幫助?

+0

不要設置日期選擇器上點擊 - 設置它的document.ready,它處理的點擊本身。 – Archer

+0

@Archer彈出窗口,當我點擊一個鏈接。如果我在doucment.ready中提供datepicker,則直接彈出窗口時會顯示日曆。它應該像點擊文本框後,日曆應該會出現。任何想法來限制它? – sahana

回答

1

您可以使用此對話框加載事件,並在可以初始化日期選擇器

$("#dialog").dialog({ 
       buttons:{ 
        Dispatch:function(){ 

        }, 
        open: SetBindings() 
       } 
       }); 
     function setBindings() 
     { 
      $("#DialogPopupdiv").find("Picker").click(function(){ 

      $(function() { 
       var pickerOpts = { 
           dateFormat:"dd-mm-yy" 
          }; 
       $("#Picker").datepicker(pickerOpts); 
       }); 
      }); 
     } 
+0

它的作品,但第一次,當我點擊文本框,它不顯示任何東西。第二次ti工作。任何想法爲什麼它的行爲如此? – sahana

+0

查看我編輯的答案,如果不是,你可以提供給我鏈接發生這種情況? – Manish