JUI datepicker:如何根据onSelect函数中的日期类分配不同的处理程序?

时间:2011-10-06 16:34:00

标签: datepicker handlers onselect

我正在努力获得一个年度日历,其外观和行为与分配给现场输入字段的内联日期选择器完全相同。所以我创建了这个块

<div class="box_content">
   <div class="yearCal" id="cal2"><!-- this will receive the calendar --></div>
 </div>

并将datepicker对象分配给id为“cal2”的元素。这使我看到显示12个月的日历小部件。每个td元素都是这样的:

<td about="I receive class 'free' or 'booked' from 'BeforeShowDay' handler">
   <a about="I am the element catching the click and need the parent class"></a>
</td>

我使用此代码

以testwise方式配置了datepicker的onSelect函数
onSelect: function(dateText, inst) { 
   console.debug( jQuery(this).parent().attr('class') ); 
}

但是当我点击日历日时,我会得到id'box_content'。无论我尝试什么,我都没有得到父母元素。但是我需要得到它,因为当窗口小部件被渲染时,每个td元素都会获得一个“免费”或“预订”类,并且根据它的类,我必须执行一些数据库操作。

你能告诉我怎么做对吗?

1 个答案:

答案 0 :(得分:0)

我不知道你的日期选择器在哪里,但是,假设你有这样的东西:

<td about="I receive the class 'free' or 'booked' from 'BeforeShowDay' event">
   Date: <input type="text" id="datepicker" about="input receiving the onSelect event">
</td>

您可以访问包含datepicker的td类(在onSelect事件上),如下所示:

<script type="text/javascript">
  $('#datepicker').datepicker({
     onSelect: function(dateText, inst) {
        //dosomething
        var tdclass = $(this).parent().attr('class');  
        //dosomethingelse
     }
  });
</script>