Autor Zpráva
Ratisko
Profil
function odesliSPozici(id)
{
  alert (eval("document.formula.volna_"+id));
  if (eval("document.formula.volna_"+id) != false)
  {
    eval ("document.formula.volna_"+id+".value = \"\"");
  }
  document.formula.submit();
}


Ahoj, zkuste mi prosím poradit s tou podmínkou, jde mi o to že alert vyhodi "undefined" a podmínka se stejně provede.. nebo teda spíše pokouší provést, snažil jsem se docílit toho, aby, za předpokladu že ten textový input existuje, byla jeho hodnota smazána :) Názvu funkce si zatím nevšímejte, je stále ve vývoji :D
_es
Profil
Ratisko:
Nepoužívaj eval a pozri si trochu viac základy syntaxe JS.
Alebo nejako zrozumiteľnejšie vysvetli, čo vlastne chceš.
Ratisko
Profil
aha, doposud jsem mylsel že se eval používá při práci s proměnými, nebo při mat. operacích. Co bych chtěl je zjistit zda input existuje a za předpokladu že ano tak mu smazat value
Ratisko
Profil
chápu třeba že v tom alertu je eval zbytečný, ale jde bez něj vůbec napsat ta podmínka? řekneš mi jak prosím? :)
_es
Profil
Ratisko:
var o = document.getElementById("id toho inputu");
if(o) o.value = "";
Alebo môžeš tú existenciu objektu získavať aj inak - cez názvy formulárov a pod.
Alebo trochu menej pekný spôsob je:
try{document.getElementById("id toho inputu").value = "";}catch(e){}
Ratisko
Profil
btw už to vidím jaký blb jsem, ono se to neporovnává s false, ale s null :) ale stejne, kdyby jste nekdo mohl napsat o zazracne fci eval() a kdy se užívá, potěšilo by mě to, něco jsem o ní přečetl, ale evidentně to k pochopení nestačilo :)
Ratisko
Profil
prostě nevím jak by se k tomu prvku dalo přistoupit přes jméno formuláře a prvku aniž bych použil eval
_es
Profil
Ratisko:
kdyby jste nekdo mohl napsat o zazracne fci eval() a kdy se užívá
Môžeš si v tom svojom kóde kliknúť na eval a dostaneš sa na dokumentáciu Mozilly.
A niečo o tom je napríklad tu.
Ratisko
Profil
jasný.. teda trošku :D moc děkuju
myslíš že bys mi ještě mohl poradit s jedním příkladem? potřeboval bych tento řádek přepsat tedy bez eval()
eval("document.formular."+pole_checkboxu[i]+".checked=false");

to je v nějakém cyklu což asi není tak podstatné.. důležité je, že mi prostě chybí ta základní část jak v řetezci typu document.formName.objectName.parameter použít proměnou
_es
Profil
Ratisko:
tento řádek přepsat tedy bez eval()
document.formular[pole_checkboxu[i]].checked = false;
Ratisko
Profil
jasne, diky.. a jeste jedna takova vec na zaver, muj posledni problem se kterym se tu potykam je s funkci lenght
function odesliSPoziciT(name)
{
  if (document.formula[name].value != "")
  { 
    if (document.formula[name].lenght < 31)   
      document.formula.submit();
    else
      alert ("omlouvám se, ale Vaše odpověď je příliž dlouhá");
  }
}

reknes mi tedy ještě prosím proč, ať zadám jakkoliv dlouhý řetězec, funkce provede alert() ? :)
petr 6
Profil
Není délka tak náhodou length?
Ratisko
Profil
no, to bude možná ono, díky moc vám oboum :D
Ratisko
Profil
tak problem pretrvava i s length :)
fajzen
Profil
Ratisko:
pravdepodobne si chcel niečo ako
if (document.formula[name].value.length < 31)
Ratisko
Profil
aha, jsem to ale blb xD diky moc, hodne jsem se dneska přiučil ;]
Witiko
Profil *
Mnohem efektivnější je naučit se věci alespoň trochu předem, než pokaždé znovu objevovat kolo. :)
Ratisko
Profil
Tak něco jsem i uměl, ale jak jsem se v tom už pak motal tak mi to přestalo myslet xD Ale je to krása když něco funguje jak má.. O:-)
Toto téma je uzamčeno. Odpověď nelze zaslat.