Ich habe ein Select-Element mit ein paar Daten, aber ich möchte auch die Möglichkeit der Auswahl eines Datums aus dem Datepicker geben, so habe ich den folgenden Code, der ein Kalendersymbol neben dem Select-Feld anzeigt.
<select name="birthday" >
<option value="${merge0.birthday}">${merge0.birthday}</option>
<option value="${merge1.birthday}">${merge1.birthday}</option>
</select>
<input type="hidden" id="bday_icon" />
Dann ist dies mein Datepicker-Skript
$("#bday_icon").datepicker(
{
changeMonth: true,
changeYear: true,
showOn: 'button',
buttonImage: 'cal/images/calendar.gif',
buttonImageOnly: true,
onSelect: function(dateText, inst) {
var field = document.getElementsByNameByName("birthday");
var opt = document.createElement('option');
opt.text = dateText;
opt.value = dateText;
field.add(opt, null);
}
});
Sollte die Funktion onSelect nicht eine neue Option zum html-Element select hinzufügen? Sehen Sie nicht, was falsch ist?
Danke.
Aktualisierung 1:
onSelect: function(dateText, inst) {
var opt = $('<option />').attr('value', dateText).text(dateText);
$('select[name=birthday]').append(opt);
}
Funktioniert perfekt, einzige Bemerkung, dass ich die neue Option als ausgewählt markieren musste, also einfach wie bearbeiten: $('<option selected/>')