Autor Zpráva
pitomec
Profil
function poslat(){

document.getElementById('vysledek').style.visibility='visible';

document.getElementById("vysledek").innerHTML = " = " +document.getElementById("form");
}

function clean(){
document.getElementById("vysledek").innerHTML = " ";
document.getElementById('vysledek').style.visibility='hidden';

}
----------------------------------------------
<form name="form" method="post" action="#" onsubmit="clean();return poslat('')">
TEXT:<br />
<input type="text" name="text" />

<input type="submit" />
</form>

mozna ze tam neco nesedi..jeste jsem to trosku upravoval ted ale jde mi o to aby se to policko vycistilo po zavolani funkce clean a a bych mohl bez obnoveni stranky vlozit jinou polozku a aby se zobrazila..
Joker
Profil
return poslat('')
Ta uvozovka uprostřed tam nepatří.

Jinak nechápu, jaký to má smysl, při znovunačtení formuláře se data stejně vymažou, ne?
pitomec
Profil
jo to je chybka jak jsem to sem zjednodusoval...
peta
Profil
pitomec
jakpsatweb - javascript - priklady - formulare

1) S formularovymi poli se pracuje jinak nez s objekty HTML.
pole.value = ''
objektHTML.innerHTML = '';
objektHTML.text = ''; //nemusi podporovat nektere prohlizece

Jinak, co ti pise JS konzola? JS konzola vypisuje chyby, pokud je script chybne programove napsany. Tyto chyby hlasi (kazdy) prohlizec, ktery umi zpracovat JS.

Joker
2) Ono tam toho nepatri a patri vice.
onsubmit="clean();return poslat('')"
... ty 2 uvozovky ' a ' by tam eventuelne i byt mohli v pripade, ze:
function poslat(promenna){}
... kazdopadne JS konzola i script by to mohl zkousnout.

pitomec
3) Ale, jestlize mam
return poslat()
pak mi poslat musi vracet {return true/false}
pokud tam neco takoveho nemas jeste v te funkci, pak funkce, pokud se zdari jeji vykonani vrati true, tim padem se formular v tvem pripade odesle vzdy
cili
function poslat(){
return false;
}
peta
Profil
pitomec
nezjednodusuj, pokud tam nemas miliony kodu, posli odkaz na stranku. V tomto pripade neni asi treba, uvidime, co vycarujes...
pitomec
Profil
peta

ja nechci mazat formularovy pole ale chci aby se smazalo div id vysledek (do ktereho uz jsem zapsal innerHTML) a konzole nic nepise..ono se stane ze to nektualizuje ten prvek ve vysledek a zobrazi se ten starej a to me vadi..pokusim se to nekam hodit ale nejdriv to musim obrat o par veci protoze je to v uzavrenym systemu...
peta
Profil
pitomec
jasne.
1) to se ti prave poousim naznacit, ze mas chybne funkci poslat.
Pokud se funkce provede spravne, tak vraci true, pokud nema nastaveny retur na neco jineho.
Jestlize ti poslat vrati true, pak formulari predas return true a to zpusobi jeho odeslani.
Odeslani formulare zpusobi soucasne vymazani formulare, resp se obnovi cela stranka. A tim se vse maze.

2)
onsubmit = " clean();return poslat('') "
tady dojde k tomu, ze se vysledek nejprve vymaze a pak cekas na vysledek funkce poslat. a ta ti vrati true...
Ale nejdrive naplni prvek vysledek, ktery v kodu nikde nemas, tim padem se nenaplni nic.

jakpsatweb - javascript - priklady
Nebo misto submit pouzij type=button
http://peter-mlich.wz.cz/x/ww/js/jsprihlady.htm
www.volny.cz/peter.mlich/www.htm - priklady + odkazy na JS, odkazy Scripty...
www.volny.cz/peter.mlich/hry/hry.htm

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0