Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: javascript location.reload pulma

PAKO [30.05.2006 14:37:00]

#

Yritän saada sivuston päivittymään, kun dropdownboxin arvo muuttuu, mutta refresh pakottaa tekemään sivustolla olevat POST:it uudestaan.

Käytän javascript top.location.reload() -metodia

explorerin virheilmoitus =
"The page cannot be refreshed without resending the information..."

Tiedän, että tuon errorin kiertäminen onnistuu muuttamalla POST:it GET:eiksi, mutta tässä tapauksessa niin ei voi tehdä.

Onko muuta keinoa kiertää tuota virheilmoitusta?

Niko [30.05.2006 16:19:57]

#

window.top.location = window.top.location; ?

PAKO [30.05.2006 16:24:51]

#

Niko kirjoitti:

window.top.location = window.top.location; ?

Ei toiminut, koska sivuston sisältö muuttuu/avautuu postauksella ja tuo komento avasi vain index -sivun.

sivun URL on tyyliin http://plaaplaa/index.php?module=31&page=muokaa­&valitse_muokattava=Selaa%2FMuokkaa
mutta POSTAUKSELLa index.php:n jälkeistä osaa ei vain näy vaan URL on koko ajan http://plaaplaa/index.php

Niko [30.05.2006 18:15:03]

#

siinä tapauksessa voisit tehdä jotenkin näin

<form name="lomake" method="post">
<input type="hidden" name="module" value = "31" />
</form>

ja päivityksen tehdä sitten document.lomake.submit();

PAKO [30.05.2006 20:37:12]

#

Niko kirjoitti:

siinä tapauksessa voisit tehdä jotenkin näin

<form name="lomake" method="post">
<input type="hidden" name="module" value = "31" />
</form>

ja päivityksen tehdä sitten document.lomake.submit();

Ei toiminut tämäkään.
Olen erotellut visuaaliset jutut SmartTemplateihin ja toiminnallisuuden php-tiedostoihin. Sivusto näyttäisi päivittyvän, mutta sivustolla oleva php-koodi ei toteudu päivityksen yhteydessä.

templatessa olevaa koodia:

function jokuvaan()
{
	document.muokkaus.submit();
}


       <form name="muokkaus" method="POST" action="index.php">
        <input type="hidden" name="m" value="{module}" />
        <input type="hidden" name="page" value="valitse_muokattava" />
	<input class="nappi" type="submit" name="valitse_muokattava" value = "Selaa/Muokkaa">
	</form>

php-tiedostossa olevaa koodia

if($page=="valitse_muokattava")
{
//pgsql hakuja ym..
}

$template->assign('page', $page);
$template->assign('module', $module);

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta