invalidace formuláře, zachování dat
- Oggy
- Člen | 306
Potřeboval bych invalidovat formulář .. ale zachovat již vyplněná pole ve formuláři..
.. situace je takováto:
pomocí jquery ui dialogu si uživatel vybere něco.. id něčeho přes jquery
zapíšu do value inputu a současně bych potřeboval na základě tohoto id
šáhnout do databáze, z údaji z db nějak pracovat a poté je zapsat do
dalšího inputu..
jak na to?
děkuju
není možné přes jquery get ..poslat signál..kde by metoda handleNeco vrátila pouze potřebný string? :) asi ne … v tom případě budu asi potřebovat invalidovat celý form.. ale je potřeba zachovat už vyplněná data.. jde nějak jednoduše všechny políčka formu defacto jejich value naskládat do DATA v GETu?
- Ondřej Mirtes
- Člen | 1536
V signálu plň $this->payload svými daty a pak na straně Javascriptu s tím dělej, co chceš :)
Něco o tom je v článku na Zdrojáku.
- Oggy
- Člen | 306
jak je možné že metoda handleNeco nezná parametr? ..
<?php
$.get({link getUrlPath!}, {'id': id}, function(payload) {
$("#frmsectionForm-urlCesta").val(payload.url);
});
?>
a v metode handleGetUrlPath($id) je id NULL ..jakto?
je to signál normálně presenteru..
edit: jinak v firebugu parametr normálně předává.
Editoval Oggy (8. 4. 2010 17:09)
- Mikulas Dite
- Člen | 756
Udělej ten link rovnou s parametrem:
<?php
$.get({link getUrlPath!, 'id' => $id}, ...
Editoval Mikulas Dite (8. 4. 2010 17:29)
- Oggy
- Člen | 306
Mikulas Dite napsal(a):
Udělej ten link rovnou s parametrem:
<?php $.get({link getUrlPath!, 'id' => $id}, ...
no .. tam to zase nezná proměnou z js ..to id a doplní to jako id string ‚id‘ ..
<?php
$.get({link getUrlPath! 'id' => id}, function(payload) { ...
?>
Editoval Oggy (8. 4. 2010 17:29)
- Mikulas Dite
- Člen | 756
No tak to je jasný. Ale protože je to id, máš ho i při vytváření linku ne?.
Pokud by to byl například text ze stránky, posílal by se v payloadu: atribut se potom nejspíš musí jmenovat stejně jako v definici action.
- Oggy
- Člen | 306
když nakouknu do kodu Davidovy ukázky:
<?php
$.get({link move!}, {'fruit': ui.helper.attr('id'), 'x': ui.helper.offset().left, 'y': ui.helper.offset().top});
}
?>
taky to předává přes get(url, data, … , ..) ..
možná se to pere s routerem, kde je nastavené id.. zkusím změnit název té proměnné
- Oggy
- Člen | 306
Mikulas Dite napsal(a):
No tak to je jasný. Ale protože je to id, máš ho i při vytváření linku ne?.
Pokud by to byl například text ze stránky, posílal by se v payloadu: atribut se potom nejspíš musí jmenovat stejně jako v definici action.
teď moc nerozumím :-( .. nejdříve v js definuju id.. potom volám get ..
- Mikulas Dite
- Člen | 756
Chtěl jsem napsat handle.
Když má parameter $id_clanku
<?php
public function handleBar($id_clanku)
{
...
?>
tak se tak musí jmenovat i klíč té payloadové proměnné, tzn. ne id, ale id_clanku.
Editoval Mikulas Dite (8. 4. 2010 17:34)