Form in ajax con radiobutton
Taggato: topic-172
- Questo topic ha 13 risposte, 2 partecipanti ed è stato aggiornato l'ultima volta 12 anni, 10 mesi fa da kjmario78.
- AutorePost
- 17 Giugno 2011 alle 20:26 #1610kjmario78Partecipante
Ciao a tutti
ho un form con un campo testo e alcuni radio-button da inviare ad una pag .php tramite ajax che non riesco a far funzionare .
Di seguito il codice:
Scusate ma non riesco a postare il codice qui.. ho provato in tutti modi!!!
19 Giugno 2011 alle 08:46 #1829jqueryitaliaAmministratoreProvo ad inserire io il codice con il tag ‘code’:
$(document).ready(function() { $("#formj").submit(function(){ var option = $("input[name='option']:checked").val(); var revip = $("#revip").val(); $.ajax({ type: "POST", url: "tool.php", data: "revip="+ revip + "&option" + option, dataType: "html", success: function(data) { $("#risultato").html(data); }, error: function() { alert("Errore..."); } }); }); });
19 Giugno 2011 alle 08:49 #1830jqueryitaliaAmministratorePrimo suggerimento: prova ad eseguire un alert dopo la lettura dei due valori e vedi se te li passa correttamente. Fai cioè questo:
var option = $("input[name='option']:checked").val(); var revip = $("#revip").val(); alert(option +' - '+ revip):
Seconda cosa, che non hai specificato: qual’è l’errore?
19 Giugno 2011 alle 10:57 #1831kjmario78PartecipanteGrazie per le risposta 🙂
l’errore era che il form non funzionava.
comunque alla fine ho risolto modificando il codice cosi:
$(document).ready(function() { $('#button').click(function(){ var option = $("input[name=option]:checked").val(); var revip = $("#revip").val(); $.ajax({ type: "POST", url: "tool.php", data: "revip="+ revip + "&option=" + option, dataType: "html", success: function(msg) { $("#risultato").html(msg); }, error: function() { alert("Errore..."); } }); }); });
e modificando anche il pulsante del form da submit a button.
P.S. Ho scoperto anche come usare il tag code 🙂
19 Giugno 2011 alle 20:08 #1832kjmario78Partecipantearghhhh funge su chrome-firefox-opera e non funge su safari 🙁
perchè???
21 Giugno 2011 alle 07:51 #1833jqueryitaliaAmministratoreMario puoi postare il codice del form?
Secondo me ti sei dimenticato di settare l’action…
21 Giugno 2011 alle 11:30 #1834kjmario78PartecipanteVeramente l’avevo omesso volutamente avendolo specificato in:
$.ajax
però come si spiega che negli altri browser funge… secondo me safari interpreta il js in maniera differente perchè mi sono accorto che anche una pagina dove è presente la mappa di google non funge in safari.
Il form è questo:
<form id="formj" action="tool.php" method="POST"><p> <input type="radio" name="option" value="0" checked="checked" />0 <input type="radio" name="option" value="1" />1 <input type="radio" name="option" value="2" />2 <input type="radio" name="option" value="3" />3 </p> <input type="text" name="revip" id="revip" size="25" /> <div id="botton"> <input id="buttoncheck" type="button" value="invia"/></div> </form>
22 Giugno 2011 alle 07:09 #1835jqueryitaliaAmministratoreCome supponevo…
Prova ad inserire nel form la seguente action:
action="javascript:;"
Vedrai che tutto tornerà a funzionare 😉
22 Giugno 2011 alle 07:23 #1836jqueryitaliaAmministratoreHo fatto una pagina di test e l’ho eseguita in tutti i maggiori browser (Explorer, Firefox, Opera, Safari e Chrome) senza errori.
Questo il codice javascript:
$(document).ready(function() { $('#buttoncheck').click(function(){ var option = $("input[name=option]:checked").val(); var revip = $("#revip").val(); $.ajax({ type: "POST", url: "tool.php", data: "revip="+ revip + "&option=" + option, dataType: "html", success: function(msg) { $("#risultato").html(msg); }, error: function() { alert("Errore..."); } }); }); });
e questo il form:
<form id="formj" action="javascript:;" method="POST"> <p> <input type="radio" name="option" value="0" checked="checked" />0 <input type="radio" name="option" value="1" />1 <input type="radio" name="option" value="2" />2 <input type="radio" name="option" value="3" />3 </p> <input type="text" name="revip" id="revip" size="25" /> <input id="buttoncheck" type="button" value="invia"/> </form>
22 Giugno 2011 alle 09:24 #1837kjmario78PartecipanteDavide mi sono spiegato male. Il form sta in una pagina che viene richiamata da un altra pagina in questo modo:
$('#tool').click(function () {
$('#central').load ('tool.html');E il form funziona con tutti i browser eccetto safari. Andando a provare direttamente sulla pagina
tool.html
funziona anche su safari.Stesso problema (sempre con safari) ce l’ho con un altra pagina che richiama la mappa di google. Possibile che
.load()
in safari si comporti diversamente? Intanto grazie per la tua disponibilità. - AutorePost
- Devi essere connesso per rispondere a questo topic.