多个输入的jQuery Datepicker

时间:2012-05-29 16:59:04

标签: javascript jquery jquery-ui datepicker jquery-ui-datepicker

我有一个jQuery datepicker脚本:

         $(function() {
              $( "#datepicker" ).datepicker({ dateFormat: "yyyy-mm-dd" });
          }); 

当我想为两个输入初始化此脚本时,它仅适用于第一个。如何将它用于两个输入?

<input type="text" name="MyDate1" id="datepicker">
<input type="text" name="MyDate2" id="datepicker">

8 个答案:

答案 0 :(得分:21)

只需将所有id更改为class

<input type="text" name="MyDate1" class="datepicker">
<input type="text" name="MyDate2" class="datepicker">

$(function() {
  $( ".datepicker" ).datepicker({ dateFormat: "yyyy-mm-dd" });
}); 

也可以使用

$(function() {
  $( "input[name^=MyDate]" ).datepicker({ dateFormat: "yyyy-mm-dd" });
});

答案 1 :(得分:6)

厌倦了重复这一点,但仍然,我再一次重复它。 id必须是唯一的。所以,使用这个:

<input type="text" name="MyDate1" class="datepicker">
<input type="text" name="MyDate2" class="datepicker">

$(function() {
    $( ".datepicker" ).datepicker({ dateFormat: "yyyy-mm-dd" });
});

答案 2 :(得分:4)

拥有重复的ID无效。您应该添加一个类:

<input type="text" name="MyDate1" class="datepicker" id="datepicker1">
<input type="text" name="MyDate2" class="datepicker" id="datepicker2">

然后你可以这样做:

     $(function() {
          $( ".datepicker" ).datepicker({ dateFormat: "yyyy-mm-dd" });
      }); 

答案 3 :(得分:2)

按名称访问datepicker函数:

$(function() {
         $('[name="MyDate1"]').datepicker({ dateFormat: "yyyy-mm-dd" });
      }); 

答案 4 :(得分:1)

如果输入字段是动态生成的,您也可以动态添加类,例如在Django模板中。

<input type="text" name="MyDate1" id="datepicker1">
<input type="text" name="MyDate2" id="datepicker2">

使用#id获取输入字段并添加一个类

$(function() {
    $( "#datepicker1, #datepicker2" ).addClass('datepicker');
    $( ".datepicker" ).datepicker({ dateFormat: "yy-mm-dd" });
});

答案 5 :(得分:0)

<input type="text" name="MyDate1" id="datepicker1">
<input type="text" name="MyDate2" id="datepicker2">

只需使用#id获取输入字段并应用datepicker。

$(function() {
    $( "#datepicker1, #datepicker2" ).datepicker({ dateFormat: "yy-mm-dd" });
});

答案 6 :(得分:0)

通过ID访问日期选择器

<input type="text" name="MyDate1" id="datepicker1">
<input type="text" name="MyDate2" id="datepicker2">

$(function() {
  $( "input[id^=datepicker]" ).datepicker({ dateFormat: "dd-mm-yy" });
});

按名称或访问日期选择器:

<input type="text" name="MyDate1" id="datepicker1">
<input type="text" name="MyDate2" id="datepicker2">

$(function() {
   $( "input[name^=MyDate]" ).datepicker({ dateFormat: "dd-mm-yy" });
});

答案 7 :(得分:-2)

  <script>
  $(document).ready(function() {
    $("#datepicker").datepicker();
  });
  $(document).ready(function() {
    $("#datepicker2").datepicker();
  });
  $(document).ready(function() {
    $("#datepicker3").datepicker();
  });
  </script>

只需将表单赋予id: 日期选择器 DATEPICKER2 datepicker3