2009-04-22 8 views
0

Ich habe dies in meinem JavaScript-Datei:jquery verwenden, um einen Datepicker auf mehr Seiten

$("#birthdate").datepicker({ 
      changeMonth: true, 
      changeYear: true, 
      altFormat: 'dd-mm-yy', 
      altField: '#birthdate', 

      }); 

ich verschiedene Seiten haben, die Felder haben, die eine Datumsauswahl benötigen. Manchmal sogar mehr als ein Datepicker auf einer Seite. Wie kann ich sicher sein, dass dies auch für ein Feld funktioniert, das beispielsweise den Klassennamen "alternateDate" hat?

Ich versuchte

$("#birthdate #alternateDate").datepicker({ 

Aber das wird nicht funktionieren.

Irgendwelche Ideen?

Update:

Hmm immer noch ein Problem mit dem Datum konvertieren.

$.datepicker.formatDate('dd-mm-yy'); 
      $(".datepicker").datepicker({ 
       changeMonth: true, 
       changeYear: true, 
      }); 

Hier ist mein html

<label for="geboortedatum">Geboortedatum <em>*</em></label><br/><input type="text" class="datepicker" id="birthdate" name="birthdate" value="{$birthdate}"><br/> 

Aber das Format, in dem Datepicker Eingabefeld noch als 04.01.2009

Bedeutung mm/tt/jj

Jede gezeigt wird Idee ist?

Antwort

1

In Ihrem Beispiel beziehen Sie sich auf zwei IDs (wegen des Symbols #). Vielleicht können Sie versuchen, durch die Sammlung von alternateDate Elemente iterieren:

$ ('# birthdate.alternateDate') jeweils (function (Index) { $ (this) .datepicker ({...}). });

Haftungsausschluss: Ich kenne nicht die genaue jquery Iterationssyntax, aber ich bin sicher, dass es so etwas ist.

+0

Miguel, Sie meine Frage nicht gut verstanden haben könnte. Was ich damit sagen will ist, dass #birthdate und #alternateDate nicht unbedingt auf derselben Seite sind. Ich möchte also eine datePicker-Funktion haben, aber ich möchte, dass sie nicht nur von einem Eingabefeld verwendet wird, das die Klasse birthDate hat, sondern auch von einigen anderen Klassen. Wie kann ich das erreichen? – sanders

4

Wie wäre es mit dem Hinzufügen einer Klasse zu den Feldern, die Sie in Datumsauswahl verwenden möchten? Zum Beispiel:

<input type="text" id="birthDate" class="MyDatePickers"> 
<input type="text" id="alternateDate" class="MyDatePickers"> 

Welche können Sie aktivieren mit:

$(".MyDatePickers").datepicker({ 
        changeMonth: true, 
        changeYear: true, 
        dateFormat: 'dd-mm-yy' 
        }); 
+0

+1: Mit Klassen wie diesem wäre am besten. @Sanders: Sie müssen das Feld "altField" nicht angeben, wenn es mit der "controlID" identisch ist. –

Verwandte Themen