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

    Passare valore al parent.document

    Ragazzi ho un piccolo problema.

    Ho un select box in un iframe e mi serve passare il valore selezionato nel form della pagina che include l'iframe.

    Per ricevere i dati nel "form madre" ho un :
    <input type="hidden" value="" />

    mentre nell'iframe ho il seguente codice:

    <form>
    <select onchange="changeImage(this.form);" onclick="parent.document.forms[0].imagename.value = 'this.value'" name="imagename" style="float: left;">
    <option selected="selected" value="">Seleziona immagine..</option>
    <option value="immagine-1.jpg">immagine 1.jpg</option>
    <option value="immagine-2.jpg">immagine 2.jpg</option>
    <option value="immagine-3.jpg">immagine 3.jpg</option>
    </select>
    [img][/img]</form>

    changeImage(this.form) serve per poter mostrare l'immagine selezionata in miniatura dopo il selectbox

    utilizzando onclick="parent.document.forms[0].imagename.value = 'this.value'" è corretto? xke a me non funziona e non so come farlo funzionare
    La rovina del mondo sara' l'indifferenza. Ma chi se ne frega!!

  2. #2
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    devi almeno togliere gli apici a this.value,
    non stai passando la stringa "this.value" ma quello che javascript deve valutare

    poi, quel forms[0] si riferisce al primo form presente nel documento della principale,
    accertati sia davvero cosi'
    e quell' imagename ad un elemento con name="imagename", non id="imagename"

    poi userei un unico gestore evento
    onchange="changeImage(this.form);parent.document.f orms[0].imagename.value = this.value"
    e quello da usarsi per una select e' sicuramente l' onchange

    se hai errori verifica cosa dice la console javascript e riporta tutto l' xhtml coinvolto
    ciao

  3. #3
    Originariamente inviato da Xinod
    devi almeno togliere gli apici a this.value,
    non stai passando la stringa "this.value" ma quello che javascript deve valutare

    poi, quel forms[0] si riferisce al primo form presente nel documento della principale,
    accertati sia davvero cosi'
    e quell' imagename ad un elemento con name="imagename", non id="imagename"

    poi userei un unico gestore evento
    onchange="changeImage(this.form);parent.document.f orms[0].imagename.value = this.value"
    e quello da usarsi per una select e' sicuramente l' onchange

    se hai errori verifica cosa dice la console javascript e riporta tutto l' xhtml coinvolto
    ciao
    Ciao e grazie per il tempo che mi sati dedicando. Cmq ho tolto gli apici e accertato che nel documento che ha l'iframe ci sia un solo form. Nell'iframe se ne trova un altro x far funzionare il js associato al selectbox (quello x cambiare immagine).

    ti riporto il codice che sta nell'iframe
    Codice PHP:
    <form action="carica.php" method="post" enctype="multipart/form-data">
        <
    input type="file" name="upload" /><input type="submit" value="carica" />
    </
    form>
        <
    script type="text/javascript" language="JavaScript">
        <!--
            function 
    changeImage(form) {
            
    selection form.minimg.options[form.minimg.selectedIndex].value;
            
    document.getElementById('img').src selection
            
    }
        
    //-->
        
    </script>

        <form>
        <select onchange="changeImage(this.form);parent.document.forms[0].imagename.value = this.value" name="minimg" style="float: left;">
    <option selected="selected" value="">Seleziona immagine..</option>
    <option value="immagine-1.jpg">immagine 1.jpg</option>
    <option value="immagine-2.jpg">immagine 2.jpg</option>
    <option value="immagine-3.jpg">immagine 3.jpg</option>

         </select>
         [img][/img]</form> 
    nel documento che richiama l'iframe c'è la seguente struttura:
    Codice PHP:

    <form name="inserisci" method="post" >
    <
    input type="text" name="campo1" />
    <
    iframe src="selectbox.html" ></iframe>
    <
    input type="hidden" name="imagename" value="" />
    <
    input type="submit" value="invia" />

    </
    form
    Ho seguito le tue istruzioni ma non capisco xke non va.
    La rovina del mondo sara' l'indifferenza. Ma chi se ne frega!!

  4. #4
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    sinceramente non vedo niente di strano neanche io,
    ho copiato quello che hai postato tu in documenti vuoti e funziona tutto (IE7 / FF3 su XP)

  5. #5
    il prob è che non vedo in php il dato che passa alla sottomissione del form principale, quindi presumo che non riesco correttamente a popolare il value dell'input nascosto.

    Che test hai fatto x sapere se funziona il codice?
    La rovina del mondo sara' l'indifferenza. Ma chi se ne frega!!

  6. #6
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    cambiato l' hidden in text, almeno vedo subito se cambia il value

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 © 2024 vBulletin Solutions, Inc. All rights reserved.