Autor Zpráva
Witiko
Profil *
Mám problém. Chtěl jsem udělat javascriptový kód, se kterým by si příchozí vyrobil vlastní hlášku. Ovšem při výběru hlášky(alert,prompt,confirm) se, ať zvolíte cokoliv, otevře prompt. Kromě toho nefungují ani části kódu, které jsem vyznačil tučně. Chtěl jsem, aby když při zadávání textu hlášky, když uživatel stiskne Storno, aby se do hlášky nenapsalo null (IE 6.0), nebo undefined (Opera), ale script na to kašle.

Kód:

<html><head><meta charset="windows-1250"><title>Tvořič hlášek</title></head><body>
<script>
x = prompt("Zadej textový obsah hlášky.", "");
if (x == "null" || x == "undefined") {x = "";}
z = "0"
while (z == "0") {
pokracovat = confirm("Má být hláška chybové hlášení???");
if (pokracovat) {y = "alert";
z = "1";}
else {pokracovat = confirm("Má být hláška otázka s možností odpovědi Ok/Storno???");}
if (pokracovat) {y = "confirm";
z = "1";}
else {pokracovat = confirm("Má být hláška formulář???");}
if (pokracovat) {y = "prompt";
z = "1";}
else alert("Tak co teda má být????");}
if (y == "prompt") {
vn = prompt("Zadej textový obsah doplňovacího okénka formuláře.", "");
if (vn == "null" || vn == "undefined") {vn = "";}
alert("Tak jdeme na to. Hlášku si uložíte jako obrázek do schránky stiskem Alt+Prt Scrn \n \nPotom stačí otevřít program Malování nebo Word, kliknout pravým tlačítkem myši a dát Vložit.");
prompt(x, vn);}
if (y == "alert") {
alert("Tak jdeme na to. Hlášku si uložíte jako obrázek do schránky stiskem Alt+Prt Scrn \n \nPotom stačí otevřít program Malování nebo Word, kliknout pravým tlačítkem myši a dát Vložit.");
alert(x);}
if (y == "confirm") {
alert("Tak jdeme na to. Hlášku si uložíte jako obrázek do schránky stiskem Alt+Prt Scrn \n \nPotom stačí otevřít program Malování nebo Word, kliknout pravým tlačítkem myši a dát Vložit.");
confirm(x);}
</script>
<center><b>Tvořič hlášek</b><br><br>Doufám, že se vám tenhle jednoduchý scriptík líbil. Vít Novotný<br><br><button onClick="location.reload(true);" title="Znovu spustit" class="regText button">Spustit znovu</button></body></html>

Zde můžete shlédnout kód v akci: http://townsman3.wz.cz/HLASKY.HTML


Prosím poraďte!!!!
Zivan
Profil *
funkce prompt() vraci hodnory null a undefined a ty to porovnavas s retezci "null" a "undefined", proto ti to porovnani nefunguje. Odstran uvozovky.

Dal mas spatne IF podminky. Napr. kdyz bych chtel "chybove hlaseni":
1. potvrdim prvni confirm a do pokracovat se ulozi true
2. podminka IF splnena, do y se ulozi 'alert'
3. dalsi podminka IF splnena, do y se ulozi 'confirm'
4. dalsi podminka IF zase splnena, do y se ulozi 'prompt'

Vyresit by se to dalo upravenim zavorek, ale lepsi to bude prepsat. Cyklus je tam naprosto zbytecne a ta promenna pokracovat taky.

Ja bych to udelal treba takhle:

function upozorneni()
{
alert("Tak jdeme na to. Hlášku si uložíte jako obrázek do schránky stiskem Alt+Prt Scrn \n \nPotom stačí otevřít program Malování nebo Word, kliknout pravým tlačítkem myši a dát Vložit.");
}

x = prompt("Zadej textový obsah hlášky.", "");
if (x == null) x = "";

if (confirm("Má být hláška chybové hlášení???"))
{
upozorneni();
alert(x);
}
else if (confirm("Má být hláška otázka s možností odpovědi Ok/Storno???"))
{
upozorneni();
confirm(x);
}
else if (confirm("Má být hláška formulář???"))
{
vn = prompt("Zadej textový obsah doplňovacího okénka formuláře.", "");
if (vn == null) vn == "";
upozorneni();
prompt(x, vn);
}
Toto téma je uzamčeno. Odpověď nelze zaslat.

0