Autor Zpráva
Petr_D
Profil
Dobrý den, potřebuji si vytvořit formulář ve které se mi bude již při načtení zobrazovat hodnota 00°00'00.000"N, 000°00'00.000"E . Po stisku numerických kláves se budou dané hodnoty postupně přiřazovat ke stupňům, minutám, vteřinám.
Můžete mi prosím poradit?Děkuji.
juriad
Profil
Má to být jedno políčko, nebo víc políček, nebo snad políčko (naznačeno zavorkami) pro každou část?
[stupne]°[minuty]'[vteriny].[desetiny vterin]"[sever-jih], [stupne]°[minuty]'[vteriny].[desetiny vterin]"[zapad-vychod]

Jak si to představuješ, když se uživatel překlepne a bude se chtít vrátit zpět? Uvědomuješ si, že souřadnice obvykle člověk nepíše ale kopíruje odjinud?

Jako nejlepší varianta mi přijde textarea, ať si do ní uživatel napíše cokoli a to zkusit nějak rozpoznat (a interaktivně mu ukazat, co bylo rozpoznáno). A mít třeba heuristiky pro desetinné tečky, čárky, znak o místo stupně, zápis světového směru na začátku, místo značek použivat obyčejnou mezeru atp. Může to rozumět více formátům: desetiny stupně namísto desetin minut nebo desetin vteřin.
Petr_D
Profil
Chci to využít jen pro sebe, protože mne nebaví hledat na klávesnici potřebné znaky. Používám jen uvedený formát, žádný jiný není nutný. Jednalo by se o jedno, max. dvě pole. Doufal jsem, že by to šlo zařídit čistě v html, ale asi to musí běžet na serveru, že?
juriad
Profil
Petr_D:
Takže tobě by vyhovovalo psát co nejméně divných znaků. Vyhovovalo by ti toto? Zkus tam zkopírovat třeba celý tento řádek:
souřadnice jsou 13o 25 minut 34.45 n a 34° 12 23" E. Najdete tam ...

Jeden vstup by byl pro tebe a neměl by atribut name (a tedy by se neodesílal na server). Ten druhý by měl name a obsahoval by souřadnice ve správném formátu. Tento druhý by mohl být i skrytý, ale mně přijde lepší, když vidíš, že se ro rozpoznalo dobře.

Občas se to může chovat trošku podivně (zvláště pokud nejsou vyplněné desetiny vteřin).
Petr_D
Profil
juriad:
To je ještě lepší, než jsem doufal.
Děkuji ti za pomoc.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: