| Autor | Zpráva | ||
|---|---|---|---|
| Mondi Profil * |
#1 · Zasláno: 9. 6. 2006, 19:28:54
Dobrý den,
mám stránku a na ní mám input text u kterého chci zamezit vkládání určitých znaků. Jde to a jestli ano, tak jak? Předem děkuji za rady. |
||
| Leo Profil |
#2 · Zasláno: 9. 6. 2006, 20:22:30
JavaScript na strane klienta (prohlizece) a PHP (nebo jiny jazyk) na strane serveru, v obem pak regularni vyrazivo. Leo
|
||
| Mondi Profil * |
#3 · Zasláno: 10. 6. 2006, 15:31:18
Děkuji za odpověď.
Mám ještě jeden dotaz a to jak přesněji by měl ten js vypadat např. pro čísla a znaménko +. Předem děkuji za nápovědu. |
||
| Mondi Profil * |
#4 · Zasláno: 11. 6. 2006, 12:50:41
Našel jsem pár příkladu s použitou udalosti onChange, ale bohuzel to nefunguje...
Můj přesný cíl stránky je takoví aby když někdo zapisuje do input se to kontrolovalo ihned a zamezilo to napsání jiných symbolu okamžitě a né až na straně serveru... Prosím o nějaké rady a předem děkuji za každou... |
||
| Leo Profil |
#5 · Zasláno: 11. 6. 2006, 13:02:27
"zamezilo to napsání jiných symbolu okamžitě a né až na straně serveru..."
To je dost extremni varianta, lidi vas nebudou mit radi :-) Spis to udelejte tak, ze tam ty symboly muzou napsat, ale hlasi jim to, ze tam nepatri. Misto onchange zkuste onkeyup, alert neni metoda document, ale window, atd. Leo |
||
| Mondi Profil * |
#6 · Zasláno: 11. 6. 2006, 13:43:17
"To je dost extremni varianta, lidi vas nebudou mit radi :-)"
To doufam, ze ne... :D Jinak moc dík za radu, která pomohla... :) |
||
| Leo Profil |
#7 · Zasláno: 11. 6. 2006, 13:50:12
Jeste doplnim jak jsem to myslel - jedna moznost (ta nejhorsi) je skutecne zakazat psani do policka (detekujete udalost onkeypress, a vracite false). Rozumnejsi varianta je detekovat onkeyup, a na zaklade vyhodnoceni jen dat uzivateli vedet jak je na tom (treba se da menit barva psaneho textu). No a pak je zaverecna kontrola (porad na strane klienta) pri onsubmit na formu - pokus o odeslani, pokud nevyhovi, zablokuju pres false plus rada uzivateli. Samozrejme VZDYCKY to pak jeste musite kontrolovat na serveru, Leo
|
||
| Mondi Profil * |
#8 · Zasláno: 11. 6. 2006, 15:34:23
Tak jsem zkusil udělat tu nejhorší variantu, ale stejně mi to nefunguje... : ( Já sem, ale lama lamerska : )
Tady davám příklad na kterým to zkouším, ale nefunguje, tak bych byl rád za radu... :)
Předem dík... : ) |
||
| Leo Profil |
#9 · Zasláno: 11. 6. 2006, 15:36:52
1, this (obj) je element inputu, vy potrebujete vedet, jaka klavesa byla zmacknuta, a to uz je prace s objektem event...
2, onkeypress = "return validate(this)" Leo |
||
|
Časová prodleva: 16 dní
|
|||
| Mondi Profil |
#10 · Zasláno: 27. 6. 2006, 17:38:51 · Upravil/a: Mondi
Dobrý den, tak jsem se koukal po netu a vypadlo mi něco jako toto, ale bohůžel to nefunguje... :(
Prosím poraďte mi už jsem v koncích a nevím co s tím mám... :(
Děkuji za odpovědi. |
||
| Leo Profil |
#11 · Zasláno: 27. 6. 2006, 17:44:31
Zkuste pro zacatek volani
jenCislo() misto jenCislo(this) Leo |
||
| Mondi Profil |
#12 · Zasláno: 27. 6. 2006, 17:50:23
Zkusil jsem to, ale pak to nevyhodí ani jeden alert z podmínky..jako by se ani ta funkce neprovedla...
|
||
| Leo Profil |
#13 · Zasláno: 27. 6. 2006, 20:04:55
Tak alert nedavejte do podminky :-) Pokud chcete vedet, jestli se fce vola, dejte ho hned na zacatek fce, treba alert('ok'), v dalsim kroku muzete mit treba alert(k), atd. Leo
|
||
| Leo Profil |
#14 · Zasláno: 27. 6. 2006, 20:06:01
A tohle
k>='48' taky asi nebude fungovat jak si predstavujete, proc ty uvozovky? Leo |
||
| Mondi Profil |
#15 · Zasláno: 27. 6. 2006, 23:27:44 · Upravil/a: Mondi
Děkuji za rady, moc pomáhají. Zkusil jsem malý testik, ale bohůžel nevím, kde je zakopaný pes. :( Podle mě je to v tom (k=e.charCode?e.charCode:e.keyCode?e.keyCode:e.which;), ale nevím, protože tomu jedinýmu v tom scriptu nerozumím. :(
|
||
| Leo Profil |
#16 · Zasláno: 28. 6. 2006, 00:00:19
Oj, moje chyba :-) Volejte takhle:
jenCislo(event) Leo |
||
| Mondi Profil |
#17 · Zasláno: 28. 6. 2006, 00:20:45
Mockrát děkuji za pomoc, už to jede, ale teď mám jiný problém a to je jak zabránit vytištění toho špatného znaku. :-)
|
||
| Mondi Profil |
#18 · Zasláno: 28. 6. 2006, 02:15:15 · Upravil/a: Mondi
Tak jsem to vyřešil takto:
Jen by mě zajímalo zda nejde nějak lépe ošetřit stisknuté klávesy. Toto ověření funguje, ale člověk může díky povoleným šipkám a klávesám (Ins, Del, Home, End, PgUp, PgDn, Backspace, atd...) zadat i znaky ($, # atd...). Vím je to kvůli ASCII, ale nevím jak to ošetřit. |
||
| Leo Profil |
#19 · Zasláno: 28. 6. 2006, 11:43:26
A co vlastne chcete POVOLIT? Leo
|
||
| Mondi Profil |
#20 · Zasláno: 28. 6. 2006, 14:18:58
:) Chtěl bych mít povoleny čísla a taky ovládací prvky klávesnice jako jsou Esc, Del, Backspace, Tab, šipky atd.. :) A chci zakázat všechny viditelné znaky jako a-Z @#$%^&*()-,./+\ atd...
|
||
| Leo Profil |
#21 · Zasláno: 28. 6. 2006, 14:23:00
Myslim, ze ne to jdete uplne spatne - povolte vsechno, a kontrolujte obsah policka pred odeslanim, budete mit jednodussi zivot, a vasi uzivatele taky, Leo
|
||
| Mondi Profil |
#22 · Zasláno: 28. 6. 2006, 15:01:11
Dobře, udělám to jak mi radíte(i když nevím jak:) Kdyby ste mi sem napsal malinkatý příklad byl bych vám vděčný. :) ), ale stejně by mě zajímalo jak to udělat aby to šlo, tak jak si představuji. Ono se to může třeba někdy v budoucnu hodit. ;)
|
||
|
Časová prodleva: 20 let
|
|||
Toto téma je uzamčeno. Odpověď nelze zaslat.
0