2012-01-24 71 views
0

我有一个div标识为inPatientDecision,其内容通过Ajax调用动态加载。加载的内容有几个HTML datepicker元素,其class属性设置为datePicker。为了将Jquery UI Datepicker日历实例化为这些元素,我在ajax complete上设置了$(\'.datePicker\').datePicker();。阿贾克斯电话是:日期选择器在ajax调用后不显示文本上的日期

jQuery.ajax({type:'POST', 
      data:{'inpatientDecisionId': '6'}, 
      url:'/myproje/um/editDecision/13', 
      success:function(data,textStatus){ 
      jQuery('#inPatientDecision').html(data);}, 
      error:function(XMLHttpRequest,textStatus,errorThrown){}, 
      complete:function(XMLHttpRequest,textStatus){ 
        $(\'.datePicker\').datepicker(); 
      }});; 
alt="Edit Authorization Decision" src="/everest/images/edit_icon.png"> 

现在,当内容加载和datepicker元素被点击,我当然可以让日历显示。但是,当我选择任何日期时,所选日期不会显示在输入框中。

确实有类似的问题之前已被问到here,但所提供的解决方案对我没有太大的帮助(可能对前面的OP没有任何答案,但答案还未被接受)。

回答

0

请参阅我更新的代码如下

jQuery.ajax({type:'POST', 
     data:{'inpatientDecisionId': '6'}, 
     url:'/myproje/um/editDecision/13', 
     success:function(data,textStatus){ 

     jQuery('#inPatientDecision').html(data); 
     $(\'.datePicker\').datepicker(); 

     }, 
     error:function(XMLHttpRequest,textStatus,errorThrown){}, 
});; 

基本完成,并成功将一起执行,所以我只是放置日期选择器放置在成功部分HTML后。

希望这应该工作。

+0

恐怕它不起作用。我现在开始认为这个问题不在ajax调用中。我从ajax调用中删除了'$(\'。datePicker \')。datepicker();'部分。在内容通过ajax加载到所需的div后,我在Firebug控制台上运行了$('。datePicker')。datePicker()'。这会给我日历上的类属性'.datePicker'输入元素,但我不能得到所选日期显示在输入元素。 – rstarter

+0

只是确认您是否删除了$(\'。datePicker \')内的“\”字符,如果连这个都不起作用,看起来当您试图绑定datepicker时,这些元素不在DOM中 – Sudesh

+0

但是如果datepicker不是约束这些元素,日历不会显示出来,有吗?日历正在显示,但所选日期未显示在输入框中。 – rstarter