Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    azzerare campo di tipo file

    salve come mai il mio campo di tipo file no viene azzerato?

    function ControllaImg(immagine) {
    var x=document.anagrafiche;
    var logo=x.logo.value;
    var estensione=logo.substr(logo.indexOf('.')+1,3);
    var img=new Image();
    img.src=immagine;
    var altezza=img.height;
    var larghezza=img.width;

    if (logo!=""){
    if ((estensione!="gif") && (estensione!="jpg")) {
    alert ("Formato per il logo inserito non corretto!");
    x.logo.value="";
    return false;
    }

    if (larghezza!=200 || altezza!=200){
    alert ("Logo di dimensioni non corrette! altezza="+altezza+" larghezza="+larghezza);
    x.logo.value="";
    return false;
    }
    }

    }

    <form enctype="multipart/form-data" method="post" name="anagrafiche" onSubmit="return controlla()">
    <input type="file" name="logo" onBlur="return ControllaImg(this.value)">
    </form>

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Tramite JS non e` permesso scrivere dentro un campo di tipo file.

    Per azzerarlo, deviusare il metodo reset() del form.

    Ciao
    Michele
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  3. #3
    praticamente?

  4. #4
    Reale_Augello
    Guest

    ...

    Originariamente inviato da Anthony81
    praticamente?
    codice:
    document.anagrafiche.reset();
    Non ti ho insegnato niente di JavaScript ?

    Scherzo ovviamente...

  5. #5
    ciao Antonio,
    dai mi fai cosi ingenuo?

    non devo azzerare tutto il form...ma solo quel campo...
    se non si puo' cosa si pu fare in alternativa?

  6. #6
    Reale_Augello
    Guest

    ...

    Originariamente inviato da Anthony81
    ciao Antonio,
    dai mi fai cosi ingenuo?

    non devo azzerare tutto il form...ma solo quel campo...
    se non si puo' cosa si pu fare in alternativa?
    Non saprei dirti...
    Dovresti creare una funzioncina che memorizzi il valore di tutti i campi (tranne quello file), esegua il reset del form e dopo travasi i dati salvati nei campi.

  7. #7
    se al onSubmit faccio return controlla()
    con
    function controlla(){
    controllaImg(immagine);
    }

    con
    function controllaImg(img){
    --controlli per le dimensioni
    }

    è esatto richiamre tale funzione senza il return?
    ovvero ritorna nella controlla() se tutto ha esito positivo in controllaImg()?

  8. #8
    up

  9. #9
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    <form ... onSubmit="controlla();">

    il form viene inviato comunque, sia che il controlla dia come output vero o falso.


    <form ... onSubmit="return controlla();">

    Il form viene inviato solo se il risultato di controlla e` true, altrimenti non parte.


    Se alla fine di controlla deve fare partire controllaImg(), e ti serve che il form parta solo se il risultato di controllaImg() e` vero, puoi fare cosi`:
    codice:
    function controlla() {
       ...
       if (qualcosa non va) return false;
       ...
       return controllaImg();
    }
    
    function ControllaImg() {
       ...
       if (qualcosa non va) return false;
       ...
       if(tuttoOK) return true;
    }
    Spero fosse questo che chiedevi.

    Ciao
    Michele
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

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.