如何合并两个jQuery Datepickers

时间:2012-02-27 11:21:30

标签: javascript jquery input datepicker

我有两个不同ID和名称的日期选择器。我可以合并它们并删除冗余代码吗?

     <script>
    jQuery(function() {
      jQuery( "#<portlet:namespace/>other_date" ).datepicker({
           showOn: "button",
           buttonImage: "/html/themes/control_panel/images/common/calendar.png",
           buttonImageOnly: true,
           changeMonth: true,
           changeYear: true
       });
      jQuery( "#<portlet:namespace/>bene_relation_birth_date").datepicker({
          showOn: "button",
          buttonImage: "/html/themes/control_panel/images/common/calendar.png",
          buttonImageOnly: true,
          changeMonth: true,
          changeYear: true
      })
});
</script>

...

<input type="text" name="other_date" label="" value=""
                    id="other_date"></input>


 <input type="text" name="bene_relation_birth_date" label="" value=""
                    id="bene_relation_birth_date"></input>

1 个答案:

答案 0 :(得分:1)

您可以一次选择两个元素,然后使用.each()循环它们。在循环中,您将datepicker应用于您选择的每个元素。您可以使用this关键字来访问循环中的当前元素。

这样的事情:

var selector = "#other_date, #bene_relation_birth_date";

jQuery(selector).each(function(i, elm) {
   jQuery(this).datepicker({
      showOn: "button",
      buttonImage: "/html/themes/control_panel/images/common/calendar.png",
      buttonImageOnly: true,
      changeMonth: true,
      changeYear: true
  });
});