Ich habe ein modales Dialogfeld für die jQuery-Benutzeroberfläche eingerichtet, das angezeigt wird, wenn ein Benutzer auf einen Link klickt. In diesem div-Tag des Dialogfelds befinden sich zwei Textfelder (der Kürze halber zeige ich nur den Code für 1), und es wird in ein jQuery UI DatePicker-Textfeld geändert, das auf den Fokus reagiert.
Das Problem ist, dass der jQuery-UI-Dialog ('Öffnen') irgendwie das erste Textfeld auslöst, das den Fokus hat, wodurch der Datumsauswahlkalender sofort geöffnet wird.
Daher suche ich nach einer Möglichkeit, um zu verhindern, dass der Fokus automatisch erfolgt.
<div><a id="lnkAddReservation" href="#">Add reservation</a></div>
<div id="divNewReservation" style="display:none" title="Add reservation">
<table>
<tr>
<th><asp:Label AssociatedControlID="txtStartDate" runat="server" Text="Start date" /></th>
<td>
<asp:TextBox ID="txtStartDate" runat="server" CssClass="datepicker" />
</td>
</tr>
</table>
<div>
<asp:Button ID="btnAddReservation" runat="server" OnClick="btnAddReservation_Click" Text="Add reservation" />
</div>
</div>
<script type="text/javascript">
$(document).ready(function() {
var dlg = $('#divNewReservation');
$('.datepicker').datepicker({ duration: '' });
dlg.dialog({ autoOpen:false, modal: true, width:400 });
$('#lnkAddReservation').click(function() { dlg.dialog('open'); return false; });
dlg.parent().appendTo(jQuery("form:first"));
});
</script>