JQuery UI-Datumsauswahl im Eingabefeld anzeigen klicken?

8

OK, vielleicht ist das ein triviales Problem, aber ich bin sehr daran interessiert zu sehen, ob jemand irgendwelche Ideen dazu hat:

Ich verwende JQuery UI. Ich habe ein <input id="#myfield" type="text"> -Feld und ich rufe $('#myfield').datepicker() auf. Der Datepicker wird angezeigt, wenn das Feld scharf gestellt wird. Aber das Feld ist das erste in meiner Form und ist bereits im Fokus, wenn es geladen wird. Wenn Sie also auf das Feld klicken, wird es nicht angezeigt. Wenn ich den Datepicker auch mit der Esc-Taste schließe, kann ich ihn nicht erneut öffnen, indem ich auf das Feld klicke, aus demselben Grund: er ist bereits im Fokus.

Mir ist bewusst, dass ich den Parameter .datepicker({showOn: 'button'}) einstellen könnte, aber ich möchte die Schaltfläche nicht. Gibt es eine Möglichkeit, den Datepicker erscheinen zu lassen, wenn das Feld den Fokus erhält ODER wenn bereits im Fokus ist? Ich probierte bereits $('#myfield').click( function () { $(this).focus() } ) und es öffnet den Datepicker korrekt, wenn ich auf das Eingabefeld klicke, aber wenn ich ein Datum auswähle erscheint es nicht im Feld.

    
alexg 23.05.2012, 10:28
quelle

4 Antworten

17

Versuchen Sie es

%Vor%     
Rajan Rawal 23.05.2012, 10:49
quelle
2

Dieses Problem wird Ihre Frage nicht beantworten, aber könnte eine Arbeit sein, wenn Ihr Problem nicht mit der Datumsauswahl-Taste, ist mit der Datumsauswahl-Taste verbunden ist ... Wenn das Sinn macht?

Ich hatte ein Problem, bei dem ich die Schaltfläche nicht verwenden wollte, weil Benutzer mein Formular / meine Seite durchsuchten und ich wollte nicht, dass die Schaltfläche den Fokus hatte. (Weird UI Erfahrung)

Wenn das auch dein Fall ist ... kannst du immer den Fokus entfernen, indem du Folgendes tust .. (Es wird auch indirekt das Problem lösen, das du jetzt hast.)

%Vor%     
Rohan Büchner 23.05.2012 10:48
quelle
1

Ich hatte ein ähnliches Szenario: Erstes Feld auf der Seite und es sollte geschlossen werden, ohne die Schaltfläche, und nur beim Klicken auf den Benutzer geöffnet werden. Aber es war in einer geschlossenen 'searchbar' Komponente, also war das Ändern des Standardverhaltens keine Option. Hier ist meine Problemumgehung:

%Vor%

Nicht schön, nicht perfekt, es gibt einen Blitz des Kalenders, wenn Seiten geladen werden, aber so weit bin ich gekommen

    
Alexandre 19.08.2015 13:14
quelle
0
%Vor%     
Girish 23.10.2017 09:25
quelle