Autor Zpráva
wrestler
Profil
Ahoj. Píšu skript. V JS mám deklarovanou fci check(), a sice následovně:

function check(){
  var heslo;
  heslo = document.getElementById("heslo").value;
  if(heslo == ""){
    alert("Nebylo zadáno heslo!");
  } else {
    document.getElementById("form").submit();
  }
}


Ve formuláři nemám žádný submit, řešil jsem to pomocí
<input type="button" value="přidat" onclick="check()">


Nicméně formulář, který mám označen id="form" se při vyplnění položky pro heslo neodešle. Při ponechání prázdného políčka se ale chybová hláška ukáže. Nevíte, kde je problém? Popř. jak byste řešili problém pomocí input type="submit"?

Díky
Nox
Profil
Ještě ten tag form by se hodil, ale...zkus document.forms["..."].submit();
a jinak jde:
var heslo;
heslo = document.getElementById("heslo").value;
if(heslo == ""){
=>
if(document.getElementById("heslo").value==""){
wrestler
Profil
Nox
Za tu prasárnu s plýtváním bajtů u proměnné heslo se omlouvám, ale byl jsem zblblý z předchozích fcí, kde jsem to používal. Zapomněl jsem taky napsat, že už jsem zkoušel následující:

document.forms["form"].submit();
document.form.submit();
document.getElementsByTagName("form").submit();

přičemž v tagu form je jak name="form", tak id="form" - přece jen pro klid duše tady tag ukážu:
<form action="kalendar.php" method="post" id="form" name="form">
Nox
Profil
wrestler
Tak možná se tomu nelíbí ten název id/name nebo funkce, ale to už fakt střílím od boku, je to divný...dělá to ve všech prohlížečích?
wrestler
Profil
Zkoušel jsem místo "form" dát "forma" .)
Nefunguje... Ve FF ani v IE nejde, Operu nesnáším takže nezkouším, ale tyhle dva stačí. Ještě tedy IE vypisuje chybu při kliknutí (ve stavovém řádku vlevo dole se objeví list papíru s výstražným trojúhelníkem), a sice že "Objekt tuto vlastnost nebo metodu nepodporuje."
Tak nevím...
centi
Profil
wrestler
Myslím, že väčšina náhodných tipov k funkcii bez kontextu už bola vyčerpaná, hodil by sa teda odkaz na problémovú stránku.
peta
Profil
wrestler
1. diskuse - jak neco udelat - NEZ ZALOZITE NOVE TEMA, PRECTETE SI
Udelej a pak konecne napis odkaz na problemovy kod. Bez toho se dal nehnem!

Ještě tedy IE vypisuje chybu při kliknutí
"Objekt tuto vlastnost nebo metodu nepodporuje."
Kterou? On to specifikuje na problemovy radek a i nazev vlastnosti.
Tez jsi nikdy nerekl, ktery IE.
IE7 ma default zakazane hlasky objektu window, window.alert, window.prompt, window.confirm a lze to povolit v nastaveni.

Jakou hlasku hlasi JS konzola ve FF? V IE uz zname polovinu pravdy.

"jak byste řešili problém pomocí input type="submit"? "
FORM onsubmit="return funkce()"
INPUT type=submit

"při vyplnění položky pro heslo neodešle. "
to znamena co? neaplikuje se funkce?
if(heslo == ""){
alert(1);
} else {
alert(2);
}
ktery alert se zobrazi?
jak vypada INPUT zapis?

vsechny tyhle problemy by vyresil ODKAZ NA ZDROJOVY KOD. Nepis kod do fora, stejne to nikdo cist nebude a stejnetak to nema smysl kopirovat do noveho souboru u mne, kdyz radek u tebe bude jiny nez u mne. Navic forum ti tu pridava zalamovani asi po 40ti znacich.
wrestler
Profil
Pardon, omlouvám se za svojí nemožnost, jen jsem vypsal kód, ve kterém jsem myslel že je jádro problému. Nicméně stránku jsem vystavil, tu jest:
uploader.hu.cz/kalendar.php

peta
> funkce by se měla aplikovat, zaměnil jsem .submit() za alert() a ten naskočil
> chybová konzole ve FF nic nevypíše
> IE 7

EDIT: Aha - tak oprava; FF najednou začlo ukazovat chybu, a sice ze "document.getElementById("form").submit is not a function" ...
peta
Profil
stranka = http://uploader.hu.cz/kalendar.php
co na ni udelat = vyplnit heslo, kliknout na pridat akci1

alert(document.getElementById("form"))

zkusil bych normalni formularovy zapis s name a to ne name=form ale name=myform
adresovani formulare je pak
document.myform

v IE to vypisuje tu samou chybu, na tomtez radku 59.
"FF najednou začlo ukazovat chybu"
Tu chybu to jiste ukazovalo i pred tim.

Co se tyce formulare, tak je to strasne neprehledne. Co treba krasnou tabulku?
datum | [...]
detaily | [...]
Ja osobne to mam teda zalomene pres 4 radky.
Libi se mi funkce pocet akci :)
wrestler
Profil
peta
zvláštní... alert(document.getElementById("form")) vyhodí [Object HTMLelement]
přepsal jsem jméno na "muheahea" a script upravil na "document.muheahea.submit()" a zas nic, prý že "document.muheahea.submit není fce" - podle FF

do tabulek to dělat nechci, je to pro soukromé potřeby, tudíž se k tomu veřejnost nedobrovolně nedostane .)

Libi se mi funkce pocet akci :)
jestli myslíš fci polozky() tak na tu sem pyšnej :-p

aktualizováno -> uploader.hu.cz/kalendar.php
peta
Profil
<input type="button" class="button strong" id="submit" onclick="check()">

dneska to funguje ve FF i v IE tak, ze na
objekt.aaa
se pokusi vratit
name = aaa
id = aaa
funkce = aaa

jinymi slovy, davat ID takove, jaka je definovana funkce muze vest k zajimave situaci...


zvláštní...
alert(document.getElementById("form")) vyhodí [Object HTMLelement]
To zvlastni neni, to je dobre. Znamena to, ze tam je html objekt. Pak je treba pokracovat dal...
alert(document.getElementById("form").submit)
co je tohle zac?
nekdy napise undefined, jindy jako u tebe opet HTML element a uz jsme doma :)
wrestler
Profil
peta
zvláštní jsem psal proto, že přestože to identifikovalo jako html objekt, nepotvrdilo se odeslání, nicméně když jsem přepsal id="submit" na "potvrd", problém se vyřešil! tímhle vám chci poděkovat nejen za pomoc, ale i za trpělivost.

Přeju hezkej den...

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:

0