Newsgroup: it.comp.www.asp
Titolo: Problema con window.open e passaggio variabili

Ciao,
esiste un modo per passare il contenuto di un campo (quello che si legge con
<% = Request.Form("MioCampo") %>) ad un file ASP in una finestra secondaria
aperta con window.open ?
Qualcuno tempo fa parlava di un'impostazione di esplorer per le finestre
figlie... e' possibile!? E Netscape che fa!? E cmq quell'impostazione non si
puo' settare direttamente dalla window.open?
Preferirei se possibile non usare una variabile di sessione, chiaro che se
fosse l'unica alternativa...
Grazie.
--
Da' mArLeNeK (ICQ #7653970)
Unofficial Marlene Kuntz's Home Page 
http://www.marlenekuntz.com
*Guadagnare* durante il collegamento Internet? Info su
http://www.mwizard.net/marlenek/

 wrote in message
news:8hnu74$838$1...@news.flashnet.it...


 fosse l'unica alternativa...
Spero di aver risposto alle tue domande.
Nettuno

 </script>
Ciao a Nettuno e Davide che hanno risposto a questo msg, ho provato il
vostro codice ma devo sicuramente aver commesso qualche errore perche' non
funziona, eccolo qui.
Nella pagina principale (principale.asp) ho messo nell'head
<script language="javascript">
<!--
function apri_riquadro()
{
msg=open("assistente.asp?Assistente=<%=Request.Form("Assistente")%>","scherm
o","toolbar=no,directories=no,menubar=no,width=400,height=350,resizable=no")
;
}
// -->
</script>
e questo nel body
<form method="POST" action onSubmit="apri_riquadro()">
  <input type="hidden" name="Assistente" value="2"><p><input type="image"
src="faccina.gif"
  name="Faccina" border="0" width="23" height="25">2</p>
</form>
Il campo si chiama Assistente, e' nascosto e ha valore "2".
Ho provato anche a dare un nome diverso a questa variabile nella open, ma
non da comunque risultati (con la var di sessione funziona, ma se riesco
cosi' preferisco), ovvero non genera errori e non scrive nulla.
Nel file assistente.asp che e' poi quello richiamato che va a riempire la
finestrella secondaria ho messo questo codice per ricevere la variabile:
<p>AssistentePosizione1: <% = Request.Form("Assistente") %><br>
Pero' non ho risultati...
Magari sbaglio a ricevere la variabile.
Attendo delucidazioni ciao e grazie ancora a tutti


 wrote in message
news:8ho4sv$ag9$1...@news.flashnet.it...


 </form>
E questo non l'ho capito, vuoi passare un valore dal client al server, ma
pretendi che il server lo abbia passato prima al client.
Non funziona cosi'.
In questa pagina esistono due oggetti chiamati assistente: il primo e'
l'oggetto request.form("Assistente") che e' stato "passato" da una pagina a
quella corrente, l'altro e' document.forms[0].Assistente.value
(ossia l'elemento di input "Assistente" contenuto nel form), come avrai
intuito contengono valori diversi.
Se vuoi che la pagina richiamata dal form riceva il valore del campo
"assistente", invece di usare un tasto "submit", ti conviene eseguire un
submit di tipo "get" a "mano", ossia:
var stringaChiamata
var campoAssistente
campoAssistente=document.forms[0]+
stringaChiamata="Assistente.asp?Assistente="+campoAssistente
msg=open(stringaChiamata,"schermo","toolbar=no,directories=no,menubar=no,wid
th=400,height=350,resizable=no")
e poi nell'html al pulsante "submit" sostituisci un bottone normale o un
immagine linkata a # o a void() (quale ti sembra piu' facile da usare) e sul
link ci metti onClick="apri_riquadro()", non sull'immagine che altrimenti ti
funziona solo con IE.
Dall'altra parte riceverai il dato nella collection "querystring", sebbene
si possa addirittura evitare di ricorrere ad asp per questo (e' scomodo:
c'e' una proprieta' dell'oggetto location che restituisce tutto cio' che
viene dopo il ? punto interrogativo, ma non riesco a rcordami quale), anche
se e' piu' laborioso (ti tocca parserizzare la risposta per separare le
varie &nomevariabile=valore&nome2variabile=2valore&ecc...).
'guri
Nettuno