Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Aug 2003
    Messaggi
    80

    virgole nelle variabili stringa

    leggo il valore dell'input tramite .value
    var x = <input>.value;
    var y = '';

    poi chiamo la funzione f(x,y);

    Se <input> contiene delle n virgole alla funzione vengono passati n+1 parametri, cioè
    <input> = "via Roma, 12"
    chiamo
    f('Via Roma','12');

    quindi interpreta la virgola come separatore di parametri della funzione anzichè stringa.

    come faccio ad interpretare la virgola come stringa?

  2. #2
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    Ma se racchiudi il valore tra apici allora vale come un argomento...
    f("via Roma, 12");

    Cosa deve fare la funzione f? x e y che cosa sono?
    Vuoi aiutare la riforestazione responsabile?

    Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)

  3. #3
    Utente di HTML.it
    Registrato dal
    Aug 2003
    Messaggi
    80
    ...
    if(document.getElementById('indirizzo').value == '') indirizzo;
    else indirizzo = document.getElementById('indirizzo').value;
    ...

    f(...,indirizzo,email,...);

    se indirizzo contiene (,) la parte dopo la virgola viene passata come email...

  4. #4
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    codice:
    <script>
    var a = "email@dominio.it";
    var b = "Via Roma, 12";
    
    
    function f(x, y) {
        alert(x);
        alert(y);
    }
    
    f(b,a);
    
    </script>
    A me così funziona e non devo controllare l'eventuale presenza di virgole... ho impressione che l'errore sia altrove (ad esempio l'if che hai postato mi sembra sbagliato)
    Vuoi aiutare la riforestazione responsabile?

    Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)

  5. #5
    Utente di HTML.it
    Registrato dal
    Aug 2003
    Messaggi
    80
    No scusa...
    ho capito dove è l'errore.
    La funzione f() è senza argomenti e funziona con l'oggetto arguments.

    Ho risolto mettendo f(...,escape(indirizzo),email,...);

    che tratta la stringa come insieme di caratteri, traducendo i caratteri speciali in codifica url.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.