Autor Zpráva
quest
Profil
Dobrý den.
Chtěl bych vědět jak aktualizovat proměnnou která se změnila po stisknutí tlačítka.
Kód:
<script type="text/javascript">
  
  var promena=<?php echo $x ?>;

  function pridej()
    {
    if (promena>=1)
       {
       promena +=1;
       }
    window.document.getElementById("vysledek").innerHTML=x;
    var temp = new Image();
    temp.src = "pridejpromenou.php?promena=" + promena;  
    }
</script>
<div id="vysledek">x 
</div>
<br>
<input type="button" onClick="pridej();" value="změň x">


Zkoušel jsem tam přidat: window.setInterval("pridej()", 1000); ale nijak se to nezměnilo.
Shrnutí:Proměnná se správně načte i změní ale neaktualizuje se takže abych mohl vidět jakou má nyní proměnná hodnotu tak musím aktualizovat stránku kliknutím na ""aktualizujte načtenou stránky""(která je v každému prohlížeči).Já bych chtěl aby se po kliknutí na "změň x" stránka aktualizovala a načetla správnou hodnotu x..
Děkuji za odpovědi.

(Jinak: kód je změněný takže nedává smysl)
Radek9
Profil
quest:
Tak to ještě aktualizuj JavaScriptem, ne? Jestli je to složitější obsah, tak to můžeš načíst AJAXem.
Chamurappi
Profil
Reaguji na questa:
Na řádku 11 přiřazuješ do innerHTML jakési neexistující x.
quest
Profil
Ten kód je přepsaný..jinak je tam x..
Chamurappi
Profil
Reaguji na questa:
A co ti tedy nefunguje? Byla by živá ukázka?
Jestli chceš jen znovunačíst stránku, tak to se dělá metodou location.reload().
peta
Profil
quest: Proc si neudelas kraticky jednoduchy kod, ktery sem das? Pokud ten kod vycucas ze slozitejsiho kodu a neopravis tak, aby spravne fungoval a pozdeji reknes, ze to melo byt jinak, tak to je zcela zbytecny prvni prispevek, ne?
Pokud kod dodatecne opravis, bylo by dobre dat opravenou verzi, at nemusime tipovat, kde jsi zmenu provedl.

Chamurappi ti napsal, ze na radku 11 pomoci innerHTML prirazujes do vysledek jakesi x, ktera ale neexistuje do te chvile, nema zadnou hodnotu. jestli tam misto "x" treba nemelo byt "promena"?
Na radku 3 mas php kod, ten pro js neni podstatny. S takovymto php kodem nemuzeme otestovat funkcnost js, protoze by jsme si museli hodnotu pro $x vymyslet vlastni a ta by mohla byt jina, nez tam dosazujes ty. Takze si klikni v prohlizeci na zobrazit - zdrojovy kod a ten kod nam sem dej pro kombinaci ($x), ktera ti nefunguje.
Uvedu priklad takoveho kodu, ktery muzeme testovat...
<script type="text/javascript">
  var promena=1; // smazan php kod
 
  function zobraz(n)
    {
    document.getElementById("vysledek").innerHTML=n;
    }

  function pridej()
    {
    if (promena>=1)
       {
       promena +=1;
       }
    zobraz(promena); // prepsano do funkce, zmeneno "x" na "promena"
    var temp = new Image();
    temp.src = "pridejpromenou.php?promena=" + promena;  
    }
</script>
<div id="vysledek">x 
</div>
<br>
<input type="button" onClick="pridej();" value="změň x">
<script>zobraz(promena);</script> <!-- pridano prepsani podle hodnoty promena pri nascteni stranky -->
Po kliknuti na tlacitko "zmen x" se mi zmeni 1 na 2, 3, 4... Podle mne by tedy po Chamurappiho rade mel kod fungovat. Otazkou je, jakou chybu tam jeste mas ty ve svem kodu, protoze tenhle je muj...
_es
Profil
quest:
jinak je tam x.
Kde? V uvedenom kóde v [#1] premenná x nie je. Možno ti pomôže: Nejčastější potíže s PHP (FAQ) » Jak přenést proměnnou z javascriptu do PHP.

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: