Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente bannato L'avatar di Ht28
    Registrato dal
    May 2006
    Messaggi
    1,544

    togliere spazi, quale codice va meglio?

    Non capisco la differenza fra questi 2 codici che sembra diano lo stesso risultato:

    Questo è nel form:

    <input...onblur="this.value=this.value.replace(/\s*$|^\s*/,'')" />

    Questo invece è nel file.js che viene poi richiamato nel form:

    if(f.messaggio.value == "" ||f.messaggio.value.match(/^\s+$/)){
    ...

  2. #2
    ammesso e non concesso che la regulare expression sia corretta (è un argomento in cui non sono ferrato) penso che la differenza sia nulla: in un caso fai il trim sull'onblur, nell'altro in un secondo momento. non cambia nulla. Io lascierei stare l'onblur, ma più che altro per filosofia mia (se un eventhandler è inutile .. non usarlo)
    Davide

  3. #3
    Utente bannato L'avatar di Ht28
    Registrato dal
    May 2006
    Messaggi
    1,544
    Originariamente inviato da Nerlaleph
    ammesso e non concesso che la regulare expression sia corretta (è un argomento in cui non sono ferrato) penso che la differenza sia nulla: in un caso fai il trim sull'onblur, nell'altro in un secondo momento. non cambia nulla. Io lascierei stare l'onblur, ma più che altro per filosofia mia (se un eventhandler è inutile .. non usarlo)
    Difatti nel risultato non ho notato differenze, percui a questo punto a livello di codice lavora meglio l'onblur del form o il codice (il secondo) che il form richiama dal file.js?

  4. #4
    direi la seconda
    Davide

  5. #5
    Utente bannato L'avatar di Ht28
    Registrato dal
    May 2006
    Messaggi
    1,544
    Originariamente inviato da Nerlaleph
    direi la seconda
    Ho notato una cosa, l'onblur toglie subito a video gli spazi bianchi e sposta a sx le parole, percui lascierei l'onblur, che dici?

    Mentre l'altro codice non sposta niente.

    Cos'è l'eventhandle?

  6. #6
    eventhandler significa gestore degli eventi. Gli eventi sono, ad esempio, il click del mouse (onclick), lo spostamento del mouse su un oggetto (onmouseover), il ricevere / perdere il focus (onfocus / onblur).
    Ovviamente usare la prima soluzione toglie immediatamente, ma a che pro? e se poi l'utente si scasina perchè vede accadere cose che non capisce? Glielo vai a spiegare te il trim? io parto sempre dal presupposto che l'utente sia deficiente (ed è quasi sempre vero, nel senso etimologico del termine )
    Visto che all'utente (almeno per come ho interpretato io il tuo problema) non gliene frega niente degli spazi, allora che non sappia quello che faccio io col codice. Se invece è importante che lo veda, bè è chiaro che l'onblur è la scelta giusta.
    Altra cosa: se gli spazi possono causare problemi (tipo per il db) io farei un controllo anche lato server. mai fidarsi di javascript.
    Davide

  7. #7
    Utente bannato L'avatar di Ht28
    Registrato dal
    May 2006
    Messaggi
    1,544
    Originariamente inviato da Nerlaleph
    eventhandler significa gestore degli eventi. Gli eventi sono, ad esempio, il click del mouse (onclick), lo spostamento del mouse su un oggetto (onmouseover), il ricevere / perdere il focus (onfocus / onblur).
    Ovviamente usare la prima soluzione toglie immediatamente, ma a che pro? e se poi l'utente si scasina perchè vede accadere cose che non capisce? Glielo vai a spiegare te il trim? io parto sempre dal presupposto che l'utente sia deficiente (ed è quasi sempre vero, nel senso etimologico del termine )
    Visto che all'utente (almeno per come ho interpretato io il tuo problema) non gliene frega niente degli spazi, allora che non sappia quello che faccio io col codice. Se invece è importante che lo veda, bè è chiaro che l'onblur è la scelta giusta.
    Altra cosa: se gli spazi possono causare problemi (tipo per il db) io farei un controllo anche lato server. mai fidarsi di javascript.
    Lato server c'è già: $messaggio = stripslashes(trim($_POST['messaggio']));

    Io lascierei onblur, è più elegante e mostra subito all'utente

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.