Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it L'avatar di wallrider
    Registrato dal
    Apr 2003
    Messaggi
    2,752

    valore di un radio nella finestra principale

    Apro una finestra di pop-up nella quale compaiono vari radio button
    come posso assegnare a un campo nascosto nella finestra principale il valore corrisopndente al radio scelto nel pop up?
    Mi faccio i complimenti da solo per la mia grammatica

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Supponendo che non ci siano frame:

    Nella popup:

    <input type="radio" name="nomeuno" value="valset" onClick="window.opener.NOMEFORM.NOMECAMPO.value += this.value;">
    <input type="radio" name="nomeuno" value="valclr" onClick="window.opener.NOMEFORM.NOMECAMPO.value += this.value;">


    Dovrebbe funzionare (non lo ho provato).

    Naturalmente NOMEFORM e NOMECAMPO devono esistere nella finestra padre. Con questo codice ogni volta che vinee premuto un pulsante viene aggiunto un valore, se vuoi sostituirlo, devi sostituire il += con =


    Ciao
    Michele
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  3. #3
    Utente di HTML.it L'avatar di wallrider
    Registrato dal
    Apr 2003
    Messaggi
    2,752
    facciamo cosi':crea un file chiamato come vuoi e dentro BODY copiaci 'sta roba:
    &lt;FORM name="form" &gt;
    &lt;INPUT type="text" name="campo" &gt;
    L'ho messo "text" per comodita'&lt;BR&gt; &lt;INPUT type=button onclick="newWindow=window.open('./child.html','','width=200,height=200,location=yes' );newWindow.creator=self" value="vai" name="Button1" &gt; &lt;/FORM&gt;
    poi crei un file che si chiama "child.html" e dentro body metti questo:
    &lt;FORM NAME="form"&gt;
    &lt;input type="radio" name="r" value="1" checked&gt; &lt;input type="radio" name="r" value="2"&gt;
    &lt;input type="button" value="OK" onclick="alert('a questo punto dovrebbe assegnare il valore del radio scelto al campo nella finesta principale');window.close()"&gt;Clicca!!!
    &lt;/FORM&gt;

  4. #4
    Utente di HTML.it L'avatar di wallrider
    Registrato dal
    Apr 2003
    Messaggi
    2,752
    intendevo
    il nel primo ci metti:
    <FORM name="form" ID="Form1">
    <INPUT type="text" name="campo" > L'ho messo "text" per comodita'

    <INPUT type=button onclick="newWindow=window.open('./child.html','','width=200,height=200,location=yes' );newWindow.creator=self" value="vai" >
    </FORM>
    e in "child.html" ci metti
    <FORM NAME="form">
    <input type="radio" name="r" value="1" checked> <input type="radio" name="r" value="2">
    <input type="button" value="OK" onclick="alert('a questo punto dovrebbe assegnare il valore del radio scelto al campo nella finesta principale');window.close()">
    </FORM>

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Attenzione. Il nome form non va bene come nome di un form: parola riservata.

    Lo script che ti ho dato prima, scriveva il value al click sul bottone, tu ora chiedi che venga scritto al click su un altro bottone.

    "child.html" ci metti
    codice:
    <form name="form2">
    <input type="radio" name="r" value="1" checked> 
    <input type="radio" name="r" value="2">
    <input type="button" value="OK" 
    onclick="var rr=(this.r[0].checked) ? this.r[0].value : this.r[1].value;
    window.opener.Form1.campo.value = rr; window.close()">
    </form>
    Nota: nella pagina padre, il tag form deve essere:
    <FORM name="Form1" ID="Form1">

    Ciao
    Michele
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  6. #6
    Utente di HTML.it L'avatar di wallrider
    Registrato dal
    Apr 2003
    Messaggi
    2,752
    ok pero' se nella finestra di pop-up ho 10 radio non posso fare il controllo su tutti!!!
    Per esempio nel campo di tipo SELECT c'e' una proprieta' che si chiama selectedIndex(o selectedItem, non ricordo), che ti restituisce l'indice dell'elemento selezionato cosi':
    document.form.select[document.form.select.selectedIndex].value
    non c'e' una proprieta' simile per i radio?

  7. #7
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    No, non c'e`.

    Supponendoi tuoi dieci radio con lo stesso nome, devi fare un loop su tutti:

    A quel punto nonconviene scrivere il JS dentro l'attributo onclick, ma conviene fare una funzione a aprte (da mettere in head):
    codice:
    function copiaradio(rr) {
      var rv;
      for (var i=0; i<rr.length; i++) {
        if(rr[i].checked) {
          rv = rr[i].value;
          break;
        }
      }
      window.opener.document.NOMEFORM.NOMECAMPO.value = rv;
      return;
    }
    Da chiamare cosi`:

    <input type="button" onClick="copiaradio(this.form.NOMERADIO);">


    Ciao
    Michele
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

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.