HighDots Forums  

showModelessDialog e submit form

Javascript (Italian) Il linguaggio JavaScript (it.comp.lang.javascript)


Discuss showModelessDialog e submit form in the Javascript (Italian) forum.



Reply
 
Thread Tools Display Modes
  #1  
Old   
Roby
 
Posts: n/a

Default showModelessDialog e submit form - 10-06-2006 , 03:42 PM






Ciao a tutti,
Ho aperto una popup in modalità con la funzione showModelessDialog.
In questa popup c'è un form di compilazione dati.
Nelle normali popup facevo un normalissimo submit alla pagina che
inseriva i dati nel DB, tutto sempre nella popup.
Con le ModelessDialog la funzione document.submit() non funziona!
Se clicco sul tasto "salva" mi si apre una nuova pagina (non a popup) .
Come posso risolvere il problema?
GRAZIE


Reply With Quote
  #2  
Old   
Federica
 
Posts: n/a

Default Re: showModelessDialog e submit form - 10-10-2006 , 04:21 AM






Ciao Roby, vedo che non sono l'unica con questo problema!
Il devo fare qualcosa di simile, ma non riesco, e aimé, nessuno finora
mi ha dato una risposta.

Al submit di un normalissimo form mi viene restituita una pagina di
risultati.
Avrei la necessità di far aprire questa pagina di risultati con degli
attributi particolari
("width=700,height=500,scrollbars=no,status=no,hel p=no,resizable=no,location=no,menubar=no,direc*tor ies=no,toolbar=no")

Ho provato con:
javascript:window.open("url", "", "attributes");
ma non riesco a mettere al posto della url il submit del form

Se come url passo il contenuto dell'action del tag form
(<form NAME="ricerca" METHOD=post ACTION="attendere.pl" target='_new'
Quote:
)
perdo i paramentri, per cui la finestra si apre correttamente,
ma non mi restituisce più i risultati.
Mi chiedevo:
Esiste la possibilità di impostare questi attributi direttamente
nell'onload della pagina di risultati?
Ho sentito dire che con le css forse potrei risovere, ma non so bene
come fare....



Reply With Quote
  #3  
Old   
ZER0
 
Posts: n/a

Default Re: showModelessDialog e submit form - 10-10-2006 , 04:32 AM



On 6 Oct 2006 12:42:39 -0700, Roby wrote:

Quote:
Ciao a tutti,
Ho aperto una popup in modalità con la funzione showModelessDialog.
In questa popup c'è un form di compilazione dati.
Nelle normali popup facevo un normalissimo submit alla pagina che
inseriva i dati nel DB, tutto sempre nella popup.
Con le ModelessDialog la funzione document.submit() non funziona!
A parte che sarà document.nomeForm.submit(), o qualcosa di analogo...

Quote:
Se clicco sul tasto "salva" mi si apre una nuova pagina (non a popup) .
Come posso risolvere il problema?
Non è un problema. E' il comportamento delle popup create con
showModalDialog/showModelessDialog. Non puoi "navigarci" all'interno. Quindi
tutti i link che aprono pagine, o submit di form, verranno eseguiti in una
nuova finestra.

Alla peggio puoi fare un workaround aprendo una pagina HTML con all'interno
un frame o un iframe dove caricare l'effettivo contenuto.
E' una sorta di tunneling, in fondo. Utilizzi una pagina che fa da tramite.

--
~ "When you have eliminated the impossible, whatever remains,
however improbable, must be the truth." (S.H.)



Reply With Quote
  #4  
Old   
ZER0
 
Posts: n/a

Default Re: showModelessDialog e submit form - 10-10-2006 , 04:40 AM



On 10 Oct 2006 01:21:10 -0700, Federica wrote:

Quote:
Ciao Roby, vedo che non sono l'unica con questo problema!
Il devo fare qualcosa di simile, ma non riesco, e aimé, nessuno finora
mi ha dato una risposta.
Sono due problematiche diverse.

Quote:
Al submit di un normalissimo form mi viene restituita una pagina di
risultati.
Avrei la necessità di far aprire questa pagina di risultati con degli
attributi particolari
("width=700,height=500,scrollbars=no,status=no,hel p=no,resizable=no,location=no,menubar=no,direc*tor ies=no,toolbar=no")
Premesso che personalmente non è pratica che faccio abitualmente, se ne è
già parlato diffusamente su questo NG. Se vai su google e cerchi negli
archivi "form" "submit" e "popup" o roba del genere, dovresti ottenere una
serie di messaggi in grado di aiutarti.

Cmq il concetto di fondo è che devi prima aprire la pagina con un certo
name, e impostare tale name nel target della form. Qualcosa di questo tipo:

<form action="..." method="post" target="results"
onsubmit="window.open('about:blank','results','wid th=700,height=500')">

E via dicendo. Ovviamente l'action della form deve essere quello della
pagina che contiene il codice che ti restituisce i risultati.

--
~ Plagiarism is copying from one source;
research is copying from two or more
(Wilson Mizner)



Reply With Quote
  #5  
Old   
Federica
 
Posts: n/a

Default Re: showModelessDialog e submit form - 10-10-2006 , 06:11 AM



Ora capisco! grazie Zero, anzi, grazie Mille :-)
Però ho ancora un problema:
Io al posto del pulsante <input TYPE="submit"> nella pagina ho un
pulsante di questo tipo:
<input TYPE="button" VALUE="INVIO" onclick="ricerca_valori()">
dove la function ricerca_valori() è all'interno di una pagina .js e
dopo una serie di controlli sulla validità dei dati selezionati,
mi fa il submit così: document.ricerca.submit();
Ora se inserisco all'interno del pulsante la chiamata a questa
function
<input TYPE="submit" onclick="ricerca_valori()"> perdo di nuovo tutta
la formattazione :-(

Come posso fare?


Reply With Quote
  #6  
Old   
ZER0
 
Posts: n/a

Default Re: showModelessDialog e submit form - 10-10-2006 , 06:18 AM



On 10 Oct 2006 03:11:11 -0700, Federica wrote:

Quote:
Io al posto del pulsante <input TYPE="submit"> nella pagina ho un
pulsante di questo tipo:
input TYPE="button" VALUE="INVIO" onclick="ricerca_valori()"
dove la function ricerca_valori() è all'interno di una pagina .js e
dopo una serie di controlli sulla validità dei dati selezionati,
mi fa il submit così: document.ricerca.submit();
La funzione che citi fa la validazione dei controlli e conseguente submit,
logica vorrebbe che essa sia spostata dal mero evento di onclick su un
pulsante all'onsubmit della form.

Cosa che ti consiglio di fare, comunque sia ti basta aprire la finestra come
ti ho fatto vedere precedentemente prima di fare l'effettivo submit. Quindi,
se questo viene fatto da codice, avrai qualcosa del tipo:

window.open("about:blank","results","width=320,hei ght=200");
document.ricerca.submit();

Ovviamente il target della form deve essere sempre equivalente al nome della
finestra che apri (in questo caso, "results").

--
~ Il tempo è quello che fai di lui.



Reply With Quote
Reply




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.4
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.