|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Member
Iscritto dal: Jan 2009
Messaggi: 31
|
[struts-javascript]Form con 2 submit
Salve a tutti ho questo piccolo problema..vorrei creare un form con due submit ognuno dei quali mi genera un dispatch diverso:
<SCRIPT language="JavaScript"> function dispatch() { switch(document.pressed){ case "Inserisci": document.scelta.action="/ricercaAction.do?dispatch=Inserisci"; break; case "Ricerca": document.scelta.action="/ricercaAction.do?dispatch=Ricerca"; break; case "All": document.scelta.action="/ricercaAction.do?dispatch=All"; break; } return true; } </SCRIPT> <html:form name="scelta" onsubmit="return dispatch(); "> <html:submit onclick="document.pressed=Ricerca" value="Cerca" /> <html:submit onclick="document.pressed=Inserisci" value="Inserisci" /> <html:submit onclick="document.pressed=All" value="All" /> </tr> </table> </html:form> quando avvio il programma mi da errore dicendo che: /jsp/cerca.jsp(37,4) Attribute name invalid for tag form according to TLD cos'è che sbaglio?grazie ancora |
![]() |
![]() |
![]() |
#2 |
Bannato
Iscritto dal: Jan 2003
Città:
Messaggi: 4421
|
...il tag html dovrebbe specificare l'action di riferimento...ricordati di chiuderlo...
Codice:
<html:form action="tuaAction" method="post"> Codice:
<input type="button" value="inserisci" onClick="dispatch() return false;" /> |
![]() |
![]() |
![]() |
#3 |
Member
Iscritto dal: Jan 2009
Messaggi: 31
|
Ciao Andrea ti ringrazio molto per avermi risposto,sei stato gentilissimo!Ho qualche problemino a capire la tua spiegazione in quanto non sono molto esperto ancora in materia
![]() Grazie ancora un saluto |
![]() |
![]() |
![]() |
#4 |
Bannato
Iscritto dal: Jan 2003
Città:
Messaggi: 4421
|
...qui trovi qualche spunto interessante a riguardo...molto in sinto tu vorresti che la action che riceve la pagina in gestione si comporti in maniera diversa a seconda del pulsantone premuto...ti consiglio di implementare nel tuo form una variabile hidden che impartisce alla action cio' che deve fare evitando di passare parametri tramite url...tale variabile verrà alimentata in maniera suimile a quanto stai facendo...nella discussione linkata c'è un esempietto chiarificatore...
...ciao Andrea... |
![]() |
![]() |
![]() |
#5 |
Member
Iscritto dal: Jan 2009
Messaggi: 31
|
<SCRIPT language="JavaScript">
function dispatch() { switch(document.pressed.value){ case "Inserisci": document.scelta.action="/ricercaAction.do?dispatch=Inserisci"; break; case "Ricerca": document.scelta.action="/ricercaAction.do?dispatch=Ricerca"; break; case "All": document.scelta.action="/ricercaAction.do?dispatch=All"; break; } return true; } </SCRIPT> <html:form name="scelta" onsubmit="return dispatch(); "> <input type="hidden" name="pressed" value="" /> <th scope="col">CAMPI</th> <th scope="col">INPUT</th> </tr> <tr> <td class="leftCell">Nome:</td> <td class="rightCell"><html:text property="nome"></html:text></td> </tr> <tr> <td class="leftCell">Cognome:</td> <td class="rightCell"><html:text property="cognome"></html:text></td> </tr> <tr> <td class="leftCell">Email:</td> <td class="rightCell"><html:text property="email"></html:text></td> </tr> <tr> <td class="rightCell"><html:submit onclick="document.pressed.value='Ricerca'" value="Cerca" /></td> <td class="rightCell"><html:submit onclick="document.pressed.value='Inserisci'" value="Inserisci" /> <html:submit onclick="document.pressed.value='All'" value="All" /></td> </tr> </table> </html:form> ma mi da sempre ques'errore:Attribute name invalid for tag form according to TLD non capisco dove sbaglio!! |
![]() |
![]() |
![]() |
#6 |
Bannato
Iscritto dal: Jan 2003
Città:
Messaggi: 4421
|
...onsubmit e name son corretti per il tag html:form...hai importato la tag-lib?...
Codice:
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %> |
![]() |
![]() |
![]() |
#7 | |
Bannato
Iscritto dal: Jan 2003
Città:
Messaggi: 4421
|
Quote:
...ciao Andrea... |
|
![]() |
![]() |
![]() |
#8 |
Member
Iscritto dal: Jan 2009
Messaggi: 31
|
in struts-config ho questo:
<action path="/ricercaAction" type="it.testhibernatestruts.action.RicercaAction" name="ricercaForm" scope="session" parameter="dispatch" validate="false"> <forward name="search" path="/jsp/view.jsp" /> <forward name="fail" path="/jsp/fail.jsp" /> <forward name="insert" path="/jsp/cerca.jsp" /> </action> ma prima di mettere gl'ultimi due tasti nello stesso form(li avevo fuori con altri due form)funzionava quindi il problema è in qualcosa scritta male dopo ![]() |
![]() |
![]() |
![]() |
#9 |
Member
Iscritto dal: Jan 2009
Messaggi: 31
|
ho notato che il problema sta in <html:form name="scelta" onsubmit="return dispatch(); ">
non posso scrivere name="scelta" ma allora se non do un nome al form come faccio a cambiare l'acrtion con document.scelta.action=? |
![]() |
![]() |
![]() |
#10 |
Bannato
Iscritto dal: Jan 2003
Città:
Messaggi: 4421
|
...scusa ma l'action utilizzata della pagina si chiama scelta o ricerca?...
...ciao Andrea... |
![]() |
![]() |
![]() |
#11 |
Member
Iscritto dal: Jan 2009
Messaggi: 31
|
il tasto cerca mi manda a:
/ricercaAction.do?dispatch=Ricerca il tasto all mi manda: /ricercaAction.do?dispatch=All e il tasto inserisci a: /ricercaAction.do?dispatch=Inserisci che sono metodi della stessa action /ricercaAction.do |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 02:17.