Diskuze: Úprava čísla na částku JQuery

JavaScript JavaScript Úprava čísla na částku JQuery

Avatar
v.bouse
Člen
Avatar
v.bouse:

Ahoj všichni
Prosím o pomoc s jednou drobností v js.
Pomocí posuvníku se na webu http://www.konsolidacebezprijmu.cz/ (teprve se dělá) mění částka. Potřeboval bych, aby se vypisovala jako česká měna.

Javascript:

<script>
$(function() {
  $( "#slider-range-min" ).slider({
    range: "min",
    step: 100000,
    value: 500000,
    min: 100000,
    max: 10000000,
    slide: function( event, ui ) {
      $( "#amount" ).val( ui.value );
    }
  });
  $( "#amount" ).val( $( "#slider-range-min" ).slider( "value" ) );
});
</script>

V html:

<form action="/formular.php" method="post">
  <input type="text" id="amount" name="vyse_pozadavku" readonly>
  <input type="submit" name="zjisti" value="Odeslat" class="rychly" />
</form>

V php bych neměl problém ale s js se trochu zlobím.
Myslím, že použitá knihovna metodu na formát čísla obsahuje ale nevím jak s tím naložit.
Určitě by to šlo i pomocí jednoduchého reguláru, něco jako tohle:

function formatAsDollars(el) {
  el.value = '$' + el.value.replace(/[^\d]/g,'').replace(/(\d\d?)$/,'.$1');
}

Díky za pomoc

Odpovědět 30.9.2014 7:40
Většinou je problém stejně mezi židlí a klávesnicí
Avatar
Honza Bittner
Redaktor
Avatar
Odpovídá na v.bouse
Honza Bittner:

Co zkusit

$( "#amount" ).val( ui.value.toLocaleString() + " Kč" );

??

// http://goo.gl/3AEAFa

Editováno 30.9.2014 7:59
Nahoru Odpovědět 30.9.2014 7:58
Ptejte se mě na cokoli na https://github.com/HoBi/ama a followujte mě na Twitteru https://twitter.com/tenhobi. :-)
Avatar
Pavel Mareš
Redaktor
Avatar
Pavel Mareš:

Jestli to dobře chápu, tak chceš z dolaru na koruny přeměnit vypisovanou hodnotu?

Nahoru Odpovědět 30.9.2014 7:59
Nechci být workoholik. Bohužel někdy musíme být tím, čím nechceme.
Avatar
v.bouse
Člen
Avatar
Odpovídá na Honza Bittner
v.bouse:

To je přesně ono.
Díky

Nahoru Odpovědět 30.9.2014 15:58
Většinou je problém stejně mezi židlí a klávesnicí
Avatar
v.bouse
Člen
Avatar
Odpovídá na Pavel Mareš
v.bouse:

Neformátovanou částku na měnu. Honza už na to odpověděl.
Díky za reakci.

Nahoru Odpovědět 30.9.2014 15:59
Většinou je problém stejně mezi židlí a klávesnicí
Avatar
v.bouse
Člen
Avatar
v.bouse:

Mohu to ještě trochu rozvést?
Nedaří se mi najít způsob, jak to vložit i sem:

$( "#amount" ).val( $( "#slider-range-min" ).slider( "value" ) );

což je defaultní při načtení stránky. Můžu ještě poprosit o úpravu?

Pak po přenesení hodnoty do velkého formuláře to potřebuji zase formátování zbavit ale ouha, ono se to nechce nechat.
PHP:

// odstranění formátu z měny
function OdstranZnaky($text) {
        $co = Array(" ","Kč");
        $cim = "";
        $text = Str_Replace($co,$cim,Trim($text));
        return $text;
}

Vzhledem k tomu, že to mezery nevymete, nevkládá tam metoda toLocaleString() nějaké jiné bílé znaky?

Díky za pomoc :(

Nahoru Odpovědět 30.9.2014 19:08
Většinou je problém stejně mezi židlí a klávesnicí
Avatar
v.bouse
Člen
Avatar
v.bouse:

Nenašel jsem možnost editovat poslední příspěvek.
Musím svůj dotaz pozměnit.
Metoda toLocaleString() se dá použít, ale jenom na zobrazení částky v prohl. Někam jí posílat je hloupost, protože není kontrola na tvarem vzhledem k lokalitě.
Vyřešil jsem to dalším <input type="hidden">, do kterého ukládám nezformátovanou částku, která se pak posílá k zpracování místo původního.

Přesto bych však chtěl poprosit o pomoc s implementací toLocaleString() do

$( "#amount" ).val( $( "#slider-range-min" ).slider( "value" ) );

Díky za pomoc.

Nahoru Odpovědět 1.10.2014 8:50
Většinou je problém stejně mezi židlí a klávesnicí
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 7 zpráv z 7.