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

    Il server ha sollevato un'eccezione

    Ciao a tutti,

    ho un form con una select multiple con valori, con un pulsante
    apro un popup per inserirne di nuovi.
    Con una funzione vorrei poter passare i valori nuovi
    al form di partenza, aggiungendoli come options della select solo che mi da' l'errore JavaScript "Il server ha sollevato un'eccezione" (!?)
    alla riga corrispondente a '... = new Option('
    il codice che utilizzo è il seguente:

    newoption = new Option('111', '11');
    var boxLength = window.opener.document.form1.select.length;
    boxLength++;
    window.opener.document.form1.select.options[boxLength] = newoption;
    self.close();



    come posso fare ?

    Grazie

  2. #2
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    se non sbaglio e' un vero e proprio bug, di cui gia' si e' parlato in passato,
    conviene avere la funzione nella pagina madre e passare solo text e value nel nuovo option dalla popup
    ciao

  3. #3
    cosa intendi avere la funzione nella pagina madre?

    Cioè prima creare l'option e poi la popup inserisce i valori?
    e se l'utente non crea più il nuovo dato avrò nellapaginam adre una option senza valori.

    una cosa che ti posso aggiungere rispetto a prima è che la new window riesce a creare la nuova option nella pagina madre ma non riesce a valorizzarla.

    ti posto il codice:

    QUESTA E' LA PAGINA MADRE
    ------------------------------------------------------
    ------------------------------------------------------
    <form name="form1" method="post" action="<%=Urlform%>" onSubmit="return
    checkForm()">

    <select name="cmbRecipient" onchange='cambiaRepresentative(this.value);'>
    <option selected value='1'>Organization Name </option>
    </select>

    <input name="addRecipient" type="button" value="Insert Recipient"
    onClick="javascript:new_recipient('s_new_recipient .asp');">

    </form>
    ------------------------------------------------------
    ------------------------------------------------------

    QUESTA E' LA PAGINA FIGLIA
    ------------------------------------------------------
    ------------------------------------------------------
    <script language="JavaScript1.2" type="text/javascript">

    Ritorna();

    function Ritorna (){
    newoption = new
    Option('<%=replace(Request("tOrg_Name"),"'","\'")% >', '<%=massimo%>', false,
    false);
    var boxLength = window.opener.document.form1.cmbRecipient.length;
    boxLength++;
    window.opener.document.form1.cmbRecipient.options[boxLength] =
    newoption;
    self.close();
    }

    </script>
    ------------------------------------------------------
    ------------------------------------------------------



    grazie
    ciao

  4. #4
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    questo nella pagina madre
    codice:
    function Ritorna(txt,val){
     newoption = new
    Option(txt,val,false,false);
    var boxLength = document.form1.cmbRecipient.length;
    boxLength++;
    document.form1.cmbRecipient.options[boxLength] =
    newoption;
    }
    dalla popup richiami solo
    codice:
    window.opener.Ritorna('<%=replace(Request("tOrg_Name"),"'","'")%>', '<%=massimo%>')
    prova, ciao

  5. #5
    Cosi riesco ad ottenere il risultato voluto.
    Richiamando la funzione riesce a valorizzarla.
    L'unica cosa che non mi spiego è il perché non riesce a farlo la opener.

    Cmq ti ringrazio.

    Ciao

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.