| Autor | Zpráva | ||
|---|---|---|---|
| Yeti Profil * |
#1 · Zasláno: 9. 12. 2012, 08:55:15
Ahoj, potřboval bych poradit:
ve formuláři kontroluji zdali uživatel zadává pouze čísla do určitých inputů mám na to tuhle funkci: function validate(evt) {
var theEvent = evt || window.event;
var key = theEvent.keyCode || theEvent.which;
key = String.fromCharCode( key );
var regex = /[0-9]|\./;
if( !regex.test(key) ) {
theEvent.returnValue = false;
if(theEvent.preventDefault) theEvent.preventDefault();
}
}<input type="text" name="jen_cisla" onkeypress="validate(event);" maxlength="10" placeholder="0123456789"> funguje to skvěle, uživatel tam prostě jinou věc než číslo nezadá, ale já bych to potřeboval doplnit o nějaké znaky, aby mohl používat backspace, delete šipky, tab, prostě věci co normálně používáte v inputech a nevím jak na to :( Dík za váš čas :) |
||
| Fisir Profil |
#2 · Zasláno: 9. 12. 2012, 09:55:06
|
||
| Yeti Profil * |
#3 · Zasláno: 9. 12. 2012, 09:58:34 · Upravil/a: Yeti
o jo, ale to tam pak pujdou zadat písmena a až pak ti to oznámí že tam muzes davat jen cisla, ja chci aby tam ty písmena nešli zadat vůbec
sorry, už mi to došlo :D ale nenapadá mě jak to upravit tak aby to počítalo s value a ne event :( mohl by jsi mi sem porsím hodit kod nebo napsat jak na to? dík moc :) |
||
| 1Pupik1989 Profil |
#4 · Zasláno: 9. 12. 2012, 11:32:49
Ve funkci test() bude místo kez evt.target.value nebo this.value. Momentálně si nevzpomenu jestli to druhé jde. První mám pocit nejde v ie, tam je to this.srcElement.
Opravte mě někdo, pokud se pletu, teď nemám přístup k pc. |
||
| _es Profil |
|||
| peta Profil |
Tak ty eventy se daji resit i takhle
function getKeyBoard(event)
{
return {
key: event.keyCode || event.which,
el: event.srcElement || event.target //event.relatedTarget || event.fromElement;
};
}
function validate(event)
var kbd, key;
kbd = getKeyBoard(event);
key = kbd.key;
...Yeti: Jenze key-eventy vubec nemusis resit, jak psal Fisir, pouzij value. onkeyup="this.value=this.value.replace(/[^0-9\.]/,'');" onblur="this.value=this.value.replace(/[^0-9\.]/,'');" |
||
| 1Pupik1989 Profil |
#7 · Zasláno: 10. 12. 2012, 11:18:51
do onkeypress bych dal "validate(this)". To jsem přehlédl. Pak by to bylo "evt.value".
|
||
|
Časová prodleva: 13 let
|
|||
0