Autor Zpráva
nollie
Profil
Mam toto:

function prepocitej()
{
var cista = 0;
cista = parseInt(cista);
obj_a1 = document.getElementById("a1");
a1 = obj_a1.value;
obj_a2 = document.getElementById("a2");
a2 = obj_a2.value;
obj_a3 = document.getElementById("a3");
a3 = obj_a3.value;
cista = a1 * a2 * a3;
document.kalkulacka.a4.value = cista;
}

A jde mi o to, aby se do poli dalo psat cislo nejen s desetinnou teckou, ale i desetinnou carkou. Proste aby bylo jedno co tam uzivatel napise, zda carku nebo tecku. Diky!
Chamurappi
Profil
Reaguji na nollie:
a1 = obj_a1.value.replace(",", ".");
V Exploreru ti to funguje? Jestli ne, viz zdejší důvod č. 2.
nollie
Profil
Tak todle mi nefunguje ani ve FF, ani v IE.
Chamurappi
Profil
Reaguji na nollie:
Teď na ten tvůj skript koukám a všímám si, že je celý nějaký divný. Proč dáváš do proměnné nulu a pak ji převádíš na číslo? A proč nepřevádíš na číslo řetězce z value?
a1 = parseFloat(obj_a1.value.replace(",", "."));
nollie
Profil
Tak sem to predelal takhle:

function prepocitej()
{
var cista = 0;
cista = parseInt(cista);
obj_a1 = document.getElementById("a1q");
a1 = obj_a1.value.replace(",", ".");
obj_a2 = document.getElementById("a2q");
a2 = obj_a2.value.replace(",", ".");
obj_a3 = document.getElementById("a3q");
a3 = obj_a3.value.replace(",", ".");
cista = Math.round(a1*a2*a3*100)/100;
document.kalkulacka.a4.value = cista;
}

Ve FF to uz funguje, ale v IE jeste nee... Nejak sem nepochopil, ten duvod...
Chamurappi
Profil
Reaguji na nollie:
Prostě přidej var:
var a1 = parseFloat(obj_a1.value.replace(",", "."));
nollie
Profil
Aha, uz vidim chybu, ja sem v php oznacil i id a4 jako a4q a to mi delalo neplechu....
Diky moc za rady, hodne si mi pomoh!

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