Formulář submit – zákaz kl. enter
- Michal Vyšinský
- Člen | 608
Ahoj,
nevím, zda to jde nějak přímo v nette. Ale přes javascript to jde –
pomůže tento článek
- Michal Vyšinský
- Člen | 608
@dotTwelve: Tohle podle mně zakáže odeslání formu úplně (i s kliknutím na tlačítko) (ale nejsem si jistý)
Editoval CherryBoss (14. 2. 2012 9:31)
- RiskyNet
- Člen | 20
Můžeš použít toto (mám to někde z netu).
$('.noEnterSubmit').keypress(function(e){
if ( e.which == 13 ) e.preventDefault();
});
Funguje na všechny inputy co mají class noEnterSubmit, což není úplně ideál, ale můžeš to upravit na celý formulář třeba.
$('form').keypress...
nebo použít filter() apod. to už je na tobě :)
- kralik
- Člen | 230
zkusil jsem do načítaného souboru my.js vložit
<?php
$('form').submit(function(){
// On submit disable its submit button
$('input[type=submit]', this).attr('disabled', 'disabled');
});
?>
a ENTER pořád funguje.
Nemůže to nějak souviset s tím, že form je class=„ajax“
použil jsem zde zveřejněný libs\AjaxForm.php
Ono totiž nefunguje ani FILLED
<?php
$form->addText('zasPS', 'Zásoba PS')
->controlPrototype
->autocomplete('off')
->addRule(Form::INTEGER, 'Musi se jednat o cislo.')
->addRule(Form::FILLED, 'Položka musí být vyplněná.');
?>
např. tato položka projde normálně když je NULL
moc díky
- RiskyNet
- Člen | 20
kralik napsal(a):
zkusil jsem do načítaného souboru my.js vložit
<?php $('form').submit(function(){ // On submit disable its submit button $('input[type=submit]', this).attr('disabled', 'disabled'); }); ?>
a ENTER pořád funguje.
Tato verze co zkoušíš zakazuje tlačítko submit (nastavuje mu disabled). Zkus tu verzi co jsem poslal já, jen pokud máš class=„ajax“ tak to změn takto:
$('.ajax').keypress(function(e){
if ( e.which == 13 ) e.preventDefault();
});
- kralik
- Člen | 230
RiskyNet napsal(a):
kralik napsal(a):
zkusil jsem do načítaného souboru my.js vložit
<?php $('form').submit(function(){ // On submit disable its submit button $('input[type=submit]', this).attr('disabled', 'disabled'); }); ?>
a ENTER pořád funguje.
Tato verze co zkoušíš zakazuje tlačítko submit (nastavuje mu disabled). Zkus tu verzi co jsem poslal já, jen pokud máš class=„ajax“ tak to změn takto:
$('.ajax').keypress(function(e){ if ( e.which == 13 ) e.preventDefault(); });
tak jsem zkoušel toto tvé, ale žádná změna.
Form je class=„ajax“
Formulář stále reaguje na enter.
Nerozumím proč, když mám nastaveno u prvků rule FILLED tak se formulář stejně potvrdí, i když toto pole je prázdné.
Toto by by de facto pomohlo, ale nevím proč je rule FILLED jakoby ignorováno.
Editoval kralik (15. 2. 2012 12:00)