předání proměnné v javascriptu

Mám takovehle script. Po kliknutí na odkaz se text v poli zobrazí v inputu. Chtěl bych aby se to co je zrovna v inputu porovnalo a pokud to splní podmínku vypíše se obsah pomocí document.write. Když do inputu zapíšu "natvrdo" co v něm je, tak se zobrazí text, který chci, ale pokud to nechámtakto, tak se mi ta proměnná nepředá. nevíte někdo jak na to? Jen pro vysvětlenou, je to část scriptu z fotogalerie a vkládání textu do inputu je dost blbý, protože je to omezené délkou, kdybych to vkládal nějak takto, tak to může mít libovolnou délku a input by pak byl skrytý. Předm díky za jakoukoli radu.

<a href="javascript:p.Preview(1)">1</a>
<a href="javascript:p.Preview(2)">2</a>

<form name="prw">
<input name="be">
</form>

<script language="JavaScript">
<!--

var pro;
var text_popis;

function previewer( iName )
{
this.count = 0
this.txt_popis = new Array()

this.Add = function( popis )
{
this.count++
this.txt_popis[this.count] = popis
}
this.Preview = function( index )
{
document.forms["prw"].be.value = this.txt_popis[index]
}
}

p = new previewer( "p" )

p.Add("1");
p.Add("2");

pro = document.forms["prw"].be.value;

if (pro == 1) text_popis = "text1";
if (pro == 2) text_popis = "text2";

document.write(text_popis);

//-->
</script>
Bohužel jsem nějak nepochopil, proč je podobná věc dělána tak složitě, když to jde jednoduše (tedy jestli jsem správně pochopil co to má jako dělat a podle toho, co jste napsal).

Dynamické předávání do document.write nedává smysl. document.write prostě jednou něco napíše a šmitec, dál už ho nemůžete ovládat (když uděláte ve stejné stránce document.write dynamicky, přepíšete logicky celý její obsah). Ale co můžete ovládat je skoro všechno ostatní, v rámci DOM (dynamického objektového modelu), tj. včetně obsahu jakýchkoliv elementů, např. pomocí innerHTML, tj. např. takhle: document.getElementById('id_elementu').innerHTML
Ja to cely nepobral :)
Potom, co jsi napsal i ke mně domů (http://webworld.wz.cz/dopis.php), začal jsem se tvým dotazem trochu zabývat. Už jsem to sice rozebíral ve své knize návštěv, ale nakopíruji odpověď i sem, kdyby to čiročirou náhodou ještě někoho zajímalo..

Takže počítejte se mnou vážení přátelé: Stránka se načítá, až dojde ke skriptu. Zkráceně: Vytvoří objekt (ale nespouští jeho metody). A teď chytře načte do proměnné "pro" hodnotu z formuláře – jestli se nemýlím, ve formuláři touhle dobou pořád ještě nic není! Z toho celkem logicky vyplývá, že zjišťuješ, zda se nic rovná 1 nebo 2... (napovím – nerovná)

Pomoc? Je třeba ověřovat hodnotu ve formuláři až potom, co ho metoda Preview naplní (po kliknutí na odkaz 1 nebo 2). Příkazy od pro = document.forms... nacpi třeba do nějaké funkce a tu potom spusť vyvoláním adekvátní události na stránce (třeba změna toho inputu). V takovém případě už ovšem opravdu nemůžeš použít document.write, jak bylo řečeno o trochu výše ^^

?mystral.cz: Nemůžu než s vámi souhlasit, ten kód je opravdu až ďábelsky přeplácaný a vůbec mi není jasné, proč se musí něco vložit nejdřív do inputu (ještě ke všemu skrytého, pro normální smrtelníky), jen proto, aby se to nakonec stejně zobrazilo někde na stránce. Asi to má nějaký hlubší smysl:)