2013-07-09 14 views
17

Z tego co widzę, zalecanym sposobem obsługi klawisza Enter w oknach dialogowych w AngularJS jest umieszczenie znacznika < w formularzu > i przycisku przesyłania w oknie dialogowym.

Wystarczająco sprawiedliwe, ale jeśli użyjesz Angular-UI i ich usługi dialogowej $, formularz zamknie się po cichu po naciśnięciu klawisza Enter. nie można tego przechwycić. , nawet jeśli dołączasz obsługę do ng-click lub ng-submit, formularz zostanie po prostu zamknięty bez zwracania wyniku.

Czy coś jeszcze muszę zrobić

[Edytuj]

rozwiązać go, miałem wyraźnie zaznaczyć, że mój przycisk „anuluj” był „przycisku” typ. Wygląda na to, że domyślnie "przesłać"?

Więc nie było prawdziwym problemem z wyjątkiem moich umiejętności formularza html :)

+1

można pokazać niektóre kodu (i być może połączenie plunkr lub jsfiddle) Nie próbowałem tej konkretnej kombinacji, ale wygląda na to, że powinna działać (być może jest opcja dialogowa, która musi być ustawiona, aby nie zamykała się przy naciśnięciu klawisza i by zamykała się tylko gdy jest jawnie zamknięta W kodzie). – shaunhusain

+0

Znalazłem problem, patrz powyżej edytuj –

+2

Fajnie, jeśli nie znalazłeś podobnego postu SO, powinieneś odpowiedzieć na własne pytanie i pokazać, co poszło nie tak, dla przyszłej Ciebie i wszystkich innych. – shaunhusain

Odpowiedz

29

odpowiedzieć na moje własne pytanie. Przyciski domyślnie przesyłają (?) I jeśli jawnie ustawię je jako typ = "przycisk", nie będą one wywoływać odświeżania po naciśnięciu klawisza Enter w polu wprowadzania formularza.

<form> 
    <input type="text" ... /> 
    <button type="button" ng-click=...>Cancel</button> 
    <button type="submit" ng-click=...>OK</button> 
</form> 

w ten sposób naciśnięcie klawisza enter w polu wprowadzania spowoduje naciśnięcie klawisza ng dla przycisku OK.

a jak html hakerzy już zrozumiał, ten nie miał nic wspólnego z dialogów ani angularjs naprawdę, to była kwestia formularz html i mój brak umiejętności internetowych ...

+2

Dzięki, uratowałeś mnie. – fmquaglia

Powiązane problemy