Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> <html>stringi - replace</html>
damianooo
post
Post #1





Grupa: Zarejestrowani
Postów: 496
Pomógł: 2
Dołączył: 15.07.2011
Skąd: Katowice

Ostrzeżenie: (0%)
-----


Witam , robię coś takiego że do inputa dodaję jeden znak , znak dolara ($) ... jednak gdy zapiszę formularz to w edycji pokazują mi się dwa dolary , bo jest ten co był zapisany + ten co dodaję ... mam też metodę którą usuwam dolara po wyjściu z pola inputa. Gdy jestem w polu to dolara ma nie być . Kod mam taki:

  1. var fieldValue = $('#price').val();
  2. $('#price').val(fieldValue+'$');
  3.  
  4. $('#price').blur(function() {
  5. $(this).val(fieldValue+'$');
  6. });
  7.  
  8. $('#price').focus(function() {
  9. fieldValue = fieldValue.replace('$','');
  10. $(this).val(fieldValue);
  11. });


jak zrobić aby usuwał mi ze stringa wszystkie znalezione dolary ? ...


dzięki

Ten post edytował damianooo 16.04.2013, 22:04:20
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
Majcon
post
Post #2





Grupa: Zarejestrowani
Postów: 113
Pomógł: 1
Dołączył: 27.11.2012
Skąd: Sieradz

Ostrzeżenie: (0%)
-----


Kod
fieldValue = fieldValue.replace(/$/gi,'');

Gdy przy wywołaniu metody replace
dodamy przy pierwszym argumencie literę
g ( ang. global ) wówczas zamiana
zostanie przeprowadzona globalnie czyli
w całym ciągu znaków. Jest jeszcze i i ( ang. insensitive chyba ;D ) wówczas nie będzie brało pod uwagę wielkości znaków w Twoim przypadku raczej nie potrzebne no ale ;p

Ten post edytował Majcon 17.04.2013, 02:22:35
Go to the top of the page
+Quote Post
damianooo
post
Post #3





Grupa: Zarejestrowani
Postów: 496
Pomógł: 2
Dołączył: 15.07.2011
Skąd: Katowice

Ostrzeżenie: (0%)
-----


jeszcze jedno ...

Czy w moim przykładzie pobranie wartości z pola aby dopisać do niej $ (dolara) jest dobre , gdy robię to w ten sposób :

var fieldValue = $('#price').val();

?

Bo niestety przy edycji jak chcę zmienić wartość w polu dla tego pola to po wyjściu z niego nadal jest wartość poprzednia , kasuje mi się ta którą wpiszę ...

coś chyba robię źle , albo źle się do tego zabieram



poprawne rozwiązanie to:

$('#price').blur(function() {
$(this).val($('#price').val()+'$');
});

$('#price').focus(function() {
$(this).val($(this).val().replace('$',''));
});



i to mi wystarcza
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 24.08.2025 - 11:11