Scusa del ritardo, ma... altri impegni![]()
Allora, nell'esempio che ho, la pagina A ha una lista di nomi, e un link che apre un popup.
Il popup inserisce nomi nel database e aggiorna la lista di A
In A scrivo una procedura, popup_callbck(v) che si occupa, quando invocata, di aggiornare la lista. Il parametro v ricevuto è un vettore del tipo:
[ ["value", "text"], ["value", "text"], ["value", "text"] ]
la pagina è:
Il popup, quando aggiorna il database, nell'evento load può invocare quella funzione con qualcosa del genere:codice:<%@ Page Language="VB" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title>Pagina senza titolo</title> <script language="javascript" type="text/javascript"> // <!CDATA[ var w_popup = null; function apri_popup() { w_popup = window.open('popup.aspx','popup','width=500px,height=500px,top=100px,left=400px'); } //-------------------------------------------------------- // mi aspetto di ricevere un vettore del tipo // [ ["value", "text"], ["value", "text"], ["value", "text"] ] //-------------------------------------------------------- function popup_callbck(v) { //cancello la lista $("Select1").options.length = 0; //creo la lista for(var i = 0; i < v.length; i++) { lista_push($("Select1"), v[i][1], v[i][0]); } } //al posto di mettere document.getElementById("div1"), mettere $("div1") //da prototype.js function $() { var elements = new Array(); for (var i = 0; i < arguments.length; i++) { var element = arguments[i]; if (typeof element == 'string') element = document.getElementById(element); if (arguments.length == 1) return element; elements.push(element); } return elements; } function lista_push(lista, testo, valore) { lista.options[lista.options.length] = new Option(testo, valore); } // ]]> </script> </head> <body> Apri popup</p> <select id="Select1" style="width: 216px; height: 314px" size="10"></select> </body> </html> <script runat="server"> </script>
if(dati && opener && opener.popup_callbck)
opener.popup_callbck(dati);
la variabile dati deve contenere il vettore di prima; come farlo dipende dal server, php, asp o altro
![]()

Rispondi quotando