Autor Zpráva
zt
Profil *
hoj, řeším jedené problém jako ne-javascriptař a už si nevím rady.

konkrétně mám <span id=neco>0</span> a po klikání se k té nule přičítá a musí se formátovat na tisíce. Dokud to nepřeskočí tisíc (tzn. neobjeví se tam mezera) tak to funguje bezvadně, bez chyby. Jakmile je v tom spanu třeba 1 000 a má se přičíst dál, už to zlobí a asi bere jako string.

Když jsem chtěl odpreparovat mezery str.replace(" ","",str) tak to nefungovalo.

nc=document.getElementById('ctot');
var inte=parseInt(nc.innerHTML)+parseInt(cen);
nc.innerHTML = number_format(inte,0,'',' ');


druhý řádek jsem přepsal na

var inte=parseInt(str.replace(" ","",nc.innerHTML))+parseInt(cen);


a už to nejde a to je ten problém.

Díky za pomoc.
_es
Profil
zt:
Metóda replace, má len dva (štandardné) argumenty.
Použi normálnu premennú v ktorej bude číslo a do toho elementu zapisuj až číslo v potrebnom textovom formáte.

Jakmile je v tom spanu třeba 1 000 a má se přičíst dál, už to zlobí a asi bere jako string.
Ono tam nič iné ako textový reťazec nie je.
zt
Profil *
a nešlo by to nějak replacem nebo zkrátka nějak z toho řetězce odfiltrovat mezery?

já tu proměnnou musím načítat právě z html stránky a následně to konkrétní číslo zvětšovat a to od jakékoliv hodnoty. a tohle je nejjednodušší řešení.
_es
Profil
zt:
Funkciu number_format si vzal skadiaľ?

druhý řádek jsem přepsal na
Premennú str máš definovanú kde?

Prečo premennú inte definuješ ako normálnu premennú a nc len ako globálnu vlastnosť (bez var)?

já tu proměnnou musím načítat právě z html stránky
Tak si hodnotu z toho elementu skonvertuj na číslo a ďalej pracuj s číslom.
Z textového reťazca s odstrániš medzery cez výraz: s.replace(/ /g, "")
zt
Profil *
number_format jsem našel na internetu jako hotovou js funkci. každopádně díky, měl jsem replace špatně zapsáno, už to tedy funguje, díky za nakopnutí.

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