On Fri, 5 May 2006 16:20:55 +0200, pasch wrote:
Quote:
Uso PHP poi per passare le variabili a un file upload.php, ma mi serve solo
alla fine, volevo riuscire a usare una funzione controllo lato client che mi
metta su un campo testo quale è la dimensione della foto appena selezionata: |
..fileSize è una proprietà non standard, e funziona solo su IE.
Tra l'altro, nei browser attuali per questioni non ben precisate di sicurezza,
non più possibile "agire" direttamente su un immagine lato client, ad esempio
anche solo visualizzandola in un tag IMG, per avere una sorta di preview.
Pare che solo IE lo permetta ancora, ma non è detto che con IE7 o qualche SP
non si adegui presto anche lui.
Quote:
non riuscendo a intercettare quale è il campo file cliccato, ho fatto una
prova che scrive sul campo corrispondente alla foto numero1, e difatti il
tutto funziona:
foto = document.forms["modulo"].elements['file'+1].value ; |
Non stai facendo un po' di confusione tra "id" e "name", qui? In elements
dovresti passare il valore del name, non dell'id. Se ti funziona, è solo
perché IE mischia le due cose (per lui non c'è differenza), ma è un errore che
tutti gli altri browser non ammettono (e, si spera, anche IE in un futuro non
troppo lontano, perché genera un bel po' di problematiche).
Quote:
come diavolo faccio a capire il bottone cliccato?!? |
Premesso tutto ciò che ti ho detto, ti basta aggiungere un parametro alla
funzione "controllo" (ricordati che l'event-handler è minuscolo, e di
impostare i delimitatori di attributo):
<input name="file[]" type="file" size="55" onchange="controllo(this)" />
E nella funzione controllo:
function controllo(sender){
/* sender contiene il riferimento all'oggetto */
}
--
"E' un vero peccato che tutte le persone che sanno come far funzionare
il Paese siano troppo occupate a guidare taxi o a tagliare capelli."
(George Burns)