8

У меня есть Datepicker скрипт JQuery:JQuery Datepicker для нескольких входов

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

Когда я хочу, чтобы инициализировать этот сценарий для двух входов, она работает только для первого. Как использовать его для обоих входов?

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

есть класс для всех входные данные, которые нуждаются в datepicker – Dhiraj

+0

$ ('. your-class'). datepicker ({dateFormat: "yyyy-mm-dd"}); – Dhiraj

+0

, в первую очередь, у вас не может быть более одного идентификатора – Joseph

ответ

18

Просто изменить все 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" }); 
}); 
+0

Я прочитал несколько потоков на этом, что предлагало сложные способы достижения этого - ваш взял меня примерно на 0,5 секунды и работал как шарм. Благодаря! –

+1

'dateFormat:" yyyy-mm-dd "' будет отображать: 'YYYYYYY-MM-DD' удаляет лишний' yy' для отображения правильного формата. Обновить до: 'dateFormat:" yy-mm-dd "' – Staccato

3

Это не является допустимым, чтобы иметь дублированные идентификаторы. Вы должны добавить класс вместо:

<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" }); 
     }); 
5

Надоело повторять это, но все-таки, повторяю это еще раз. id s должны быть уникальными. Так, используйте:

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

с

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

доступа Функция DatePicker по имени:

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

Вы также можете добавить классы на лету, если поля ввода генерируются динамически, например, в шаблонах 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" }); 
}); 
-1
<script> 
    $(document).ready(function() { 
    $("#datepicker").datepicker(); 
    }); 
    $(document).ready(function() { 
    $("#datepicker2").datepicker(); 
    }); 
    $(document).ready(function() { 
    $("#datepicker3").datepicker(); 
    }); 
    </script> 

И просто дать Формируют идентификаторы: Datepicker DATEPICKER2 datepicker3

+0

Нет необходимости в нескольких * готовых * функциях. – kursus