Ivan Gentile

Office and .NET blog
posts - 24, comments - 0, trackbacks - 2

Preview immagine prima di farne l'upload in Javascript con ASP.Net

Di seguito vi riporto uno script (client-side) per effettuare la preview di un immagine prima di farne l'upload sul server.

Garantisco che non è stato facile, quindi eccola:

 

<script language=javascript type="text/javascript">
var maxLarghezza=100;
var maxAltezza=100;
var TipiFile=["bmp","gif","png","jpg","jpeg"];
var Output="img";
var FotoMom;

    function ApplicaModifica()
    {
        var Campo=document.getElementById(Output);
        var x=parseInt(FotoMom.width);
        var y=parseInt(FotoMom.height);
        if (x>maxLarghezza)
        {
            y*=maxLarghezza/x;
            x=maxLarghezza;
        }
        if (y>maxAltezza)
        {
            x*=maxAltezza/y;
            y=maxAltezza;
        }
        Campo.style.display=(x<1 || y<1)?"none":"";
        Campo.src=FotoMom.src;
        Campo.width=x;
        Campo.height=y;
    }

    function SettaImmagine()
    {
        var source=document.getElementById('file').value;
        var ext=source.substring(source.lastIndexOf(".")+1,source.length).toLowerCase();
        for (var i=0; i<TipiFile.length; i++) if (TipiFile[i]==ext) break;
        if (i<TipiFile.length)
        {
            xxx='file://localhost/' + source;
            xxx=xxx.toLowerCase();
            FotoMom=new Image()
            FotoMom.src=xxx;
            setTimeout("ApplicaModifica()",200);
        }
        else
        {
            alert('FORMATO NON VALIDO!!\n');
        }
    }
</script>

......

......


<BODY>
<br>
<input type="file" id="file" onchange="SettaImmagine()">
<br>
<img id="img" src="">
<br>
</BODY>

 

Ciao

Ivan

posted on mercoledì 15 marzo 2006 17.32