Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2002
    Messaggi
    585

    setattribute con ie8, problem !!

    Ciao a Tutti,

    ho la mia pagina web in cui ho un menu' a tendina con 2 opzioni da scegliere.

    Se uno sceglie "Yes" si apre la mascherina di esplora risorse in cui uno sceglie il file che vuole, per esempio nel suo disco D:/test/prova.pjp

    una volta scelto il file, esso compare subito sotto il menu' a tendina.

    Usando la versione ie6 cio' funziona correttamente; passando alla versione ie8 cio' non funziona piu' in quanto il setattribute non prende il valore che l' utente sceglie.

    Come fare per risolvere il problema ???
    Se ci fosse anche qualche altra strada alternativa al setAttribute, ben venga ...

    e' da giorni che ci sono su' questo problema e non riesco a venirne fuori ...

    Grazie mille in anticipo !!!

    codice:
    <head>
    <script type="text/javascript">
    
    function changePic(strPath) {
                     var path = new String(strPath); 
                         path = "file:///" + path.replace(/[\\]/g,'/'); 
                         document.getElementById('gant').setAttribute('src',path);
                         //document.getElementById('gant').src = path;  }
    
     function show_box(box) {
         if (box.options[box.selectedIndex].value=='No') { document.getElementById('ip_file').style.display='none'; }
         else {  document.getElementById('ip_file').style.display=''; }
            }
    </script>
    </head>
    
    <body>
    
    <td>
    <select size="1" name="chart" id="chart" onchange="show_box(this)">
                 <option value="<%=objRS("Chart")%>" selected><%=objRS("Chart")%></option>
                 <option value="No">No</option>                  
                 <option value="Yes">Yes</option>
    </select> 
    
    <input type="file" id="ip_file" name="ip_file" size="1" onChange="changePic(this.value);" style="display: none;">
    
    </td>
    ...
    
    <tr>
    <td><p align="center">
    [img]../images/rectangle.jpg[/img]
    </td></tr>
    come si vede dalla riga blu ho provato anche a forzare a mano il path ma a video non vedo l' immagine.

    Ho provato anche a fare cosi' ma niente ...

    codice:
    window.onload = function changePic(strPath) {
    var path = new String(strPath); 
     path = "file:///" + path.replace(/[\\]/g,'/'); 
     document.getElementById('gant').setAttribute('value',path);
     document.getElementById('gant').setAttribute('src',path);
     }

  2. #2
    Utente di HTML.it
    Registrato dal
    Jun 2002
    Messaggi
    585
    Ho visto adesso che mantenendo la sintassi:

    codice:
    function changePic(strPath) {
      var path = new String(strPath); 
      path = "file://" + path.replace(/[\\]/g,'/');
      document.getElementById('gant').setAttribute('src',path);
    }
    carica correttamente, sotto al menu' a tendina, l' immagine scelta,

    a patto pero' che tale immagine risieda su un disco esterno (es. N, P, O, ...)
    ma NON nel proprio disco C, D ... perche' ??

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2002
    Messaggi
    585
    Da quello che ho letto in Internet e' che cio' e' dovuto a problemi di sicurezza.

    Occorre pertanto rassegnarsi... ho testato cio' fino a iE 9 e il risultato e' il medesimo ... non carica l' immagine scelta da C: oppure da D:

    Ho letto che forse con IE 10 qualche speranza c' e' ... e' da provare ... purtroppo non ce l' ho ..

    Saluti

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.