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

    controllo js su campi file creati dinamicamente

    ciao ragazzi, non so come poter fare a creare un controllo js per dei campi di file creati dinamicamente. se l'utente sceglie, per esempio di caricare 5 immagini mi verranno 5 campi file con nome tutti upfile. ora, come faccio a controllare che nei campi che mi riempie il file sia ".jpg"? e come faccio a distinguere i campi riempiti da quelli lasciati vuoti (l'utente ne crea 5 ma alla fine ne riempie solo 3,x es)?
    se fosse un solo campo file riesco a individuare iltipo di file ma così...no! come posso fare?
    per il singolo file avevo fatto così:
    codice:
    ft = document.articolo.upfile;
    if((ft.value && ft.value.substr(ft.value.lastIndexOf(".")).toLowerCase() != ".gif") && (ft.value && ft.value.substr(ft.value.lastIndexOf(".")).toLowerCase() != ".jpg"))
    				{
    alert("L'immagine che vuoi allegare è di un tipo non ammesso! Sono ammessi solo file .jpg e .gif");
    					ft.focus();
    return false;
    				}

  2. #2
    Codice PHP:
    for($i=1;$i<4;$i++)
    { echo
    "<li class=\"stampatello\">fotografia n° $i\n[*]<input class=\"modulo\" name=\"upfile[]\" type=\"file\" id=\"upfile"$i ."\" />\n"; } 
    come faccio a controllare questi 3 campi, non riesco in nessuna maniera?

  3. #3
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649

    Re: controllo js su campi file creati dinamicamente

    una dritta, miglioralo da solo tenendo presente che ft e' un array
    codice:
    ft = document.articolo.elements['upfile[]'];
    var ok=true;
    for(var k=0;k<ft.length;k++){
      if(ft[k].value=='' || (ft[k].value.lastIndexOf(".")).toLowerCase() != ".gif" && ft[k].value.lastIndexOf(".")).toLowerCase() != ".jpg")){
        alert('solo jpg o gif');
        ft[k].focus();
        ok=false;
        break;
      }
    }
    return ok;

  4. #4

    Re: Re: controllo js su campi file creati dinamicamente

    Originariamente inviato da Xinod
    una dritta, miglioralo da solo tenendo presente che ft e' un array
    il problema è ke nn so come gestirlo

  5. #5
    così facendo mi funziona (c'ho messo quelle 3 ore x far sto..coso) ...ma non so se è corretta la forma..

    codice:
    ft = document.schedanegozi.elements['upfile[]'];			
    			for (var i=0;i<ft.length;i++)
    			{ 
    if((ft[i].value && ft[i].value.substr(ft[i].value.lastIndexOf(".")).toLowerCase() != ".gif") && (ft[i].value && ft[i].value.substr(ft[i].value.lastIndexOf(".")).toLowerCase() != ".jpg"))
    				{
    					alert("L'immagine che vuoi allegare è di un tipo non ammesso! Sono ammessi solo file .jpg e .gif");
    				ft[i].focus();
    				return false;
    				}	
    			}

  6. #6
    ehm...se volessi essere proprio preciso preciso e voglio dire all'utente quale delle immagini è in formato non corretto? come costruisco l'alert?
    dovrei passargli [i] ma se inserisco nell'alert ".[i]." in questo modo

    alert("L'immagine ".[i]." che vuoi allegare...")

    mi dice che c'è un errore

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.