2013-06-27 4 views
1

Я пробовал календарь внутри всплывающего окна. У меня есть текстовое поле внутри всплывающего окна. При нажатии на всплывающее окно должен наступить календарь. Ниже приведен код i Tried. Я не получаю календарь на клавиатуре.calendar внутри jquery popup

/*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

Не устанавливайте DatePicker по щелчку - установить его в document.ready и обрабатывает щелчок сам. – Archer

+0

@Archer Popup появляется, когда я нажимаю ссылку. Если я дам datepicker внутри doucment.ready, календарь приходит, когда всплывающее окно приходит напрямую. Это должно быть похоже на то, что после нажатия текстового поля должен наступить календарь. Любая идея ограничить его? – sahana

ответ

1

вы можете использовать диалоговое событие загрузки и в том, что вы можете инициализировать DatePicker

как

$("#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

Работает, но в первый раз, когда я нажимаю текстовое поле, ничего не отображается. Работает второй раз. Любая идея, почему так себя ведет? – sahana

+0

проверить мой отредактированный ответ, если нет, можете ли вы предоставить мне ссылку, где это происходит? – Manish