Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno Formát PSČ v JavaScriptu

Vyrábím pdf formulář (ne v Acrobatu, ale v PDF-XChange Editor 8 Plus od firmy Tracker Software) a potřebuji naformátovat pole pro PSČ, tedy ve formátu "000 00".

Umím naformátovat číslo, s oddělením tisícovek, s i bez desetinných míst

2 desetinná místa, např. 14 811,23

if (event.value) {
    event.value = util.printf("%,2.2f", event.value ).split('.').join(' ');
}

Celé číslo, např. 56 786

if (event.value) {
    event.value = util.printf("%,2.2f", event.value ).split('.').join(' ');
}

Ale vůbec netuším, jak vytvořit směrovací číslo, např. 735 05.

Poradíte? Díky.
JavaScript vůbec neovládám a učit se to už nebudu. Bohužel možnosti editoru s českým PSČ nepočítají..

Řešení:

Tak už to mám (ze supportu):

// convert current field value to a number
var n = 1 * event.value;
// format it
event.value = util.printx("999 99", util.printf("%05d", n));
Předmět Autor Datum
Google dneska nefunguje? :-) https://stackoverflow.com/questions/32529602/add-a-space-to-uk-postcod…
vopicak 16.04.2019 15:16
vopicak
Funguje, ale je mi to prd platné, čumím na to jak tele na nová vrata. Vůbec netuším, co s tím.. Prog…
L-Core 16.04.2019 16:23
L-Core
No dobre, co takhle? Napr: var psc = '11000'; psc = psc.replace(/(\d{3})/g, '$1 '); nový
vopicak 16.04.2019 16:39
vopicak
Ani ťuk. Prostě se musí nějak v JavaScriptu upravit vlastnosti (a formát) editačního pole, ten tvůj… nový
L-Core 16.04.2019 16:58
L-Core
Tak už to mám (ze supportu): // convert current field value to a number var n = 1 * event.value; //… poslední
L-Core 16.04.2019 17:38
L-Core

Funguje, ale je mi to prd platné, čumím na to jak tele na nová vrata. Vůbec netuším, co s tím..
Programovat neumím (respektive od dob Cobolu a Fortranu před skoro 40 lety jsem vše zapomněl, nové jazyky jsem se nikdy neučil. S bídou zvládnu něco ve VBA v Excelu).

Nicméně se domnívám, že ten příkaz by měl být s použitím printf, jak jsem (za pomocí devs) zbastlil výše. Tam jsem použil "vlastní formát" (předvolené číslo má omezené možnosti formátování), přesto se v následujících výpočtech (které ve formuláři mám) chová jako číslo.

Kontaktoval jsem i support (aplikace má formát ZIP code, ale jen 00000 nebo 00000-0000, USA/Kanada, český ne). Pokud se ozvou, dám to pak i sem.

Koukal jsem i na tohle: https://forum.tracker-software.com/download/file.php?id=10814
(a také netuším, jak na to)

Zpět do poradny Odpovědět na původní otázku Nahoru