Ho provato a semplificare il mio problema, ma penso che sia meglio che descrivo brevemente il mio script:
1. la mia pagina index.html contiene un div:
2. con $.getJSON ottengo l'html per #mydiv:codice:<div id='mydiv'></div>
I dati ottenuti con JSON sono l'html che contiene il form #myform:codice:qs = "json.php"; $.getJSON(qs, function(json) { $("#mydiv").html(json.body); });
3. Fatto ciò, vorrei usare il plugin jquery.form.js per inviare una richiesta ajax con #myform:codice:<form id='myform' action='json.php?a=mod' method='post'> h = <input type='text' id='h' name='h' size='30' value=''/> <input type='submit' value='modifica' /> </form>
e le funzioni sewt_validate e sewt_success sono (copiate del sito del plugin):codice:var options = { dataType: 'json', beforeSubmit: sewt_validate, success: sewt_success }; $('#myform').ajaxForm(options);
Adessp la richiesta ajax non funziona. penso sia perchè jquery non vede #myform e io non posso farne il bind ($('#myform').ajaxForm(options);).codice:function sewt_validate(formData, jqForm, options) { for (var i=0; i < formData.length; i++) { if (!formData[i].value) { alert('Please enter a value for all fields'); return false; } } alert('All fields contain values.'); } function sewt_success(data, status) { if(status == 'success') { $("#mydiv").html(data.body); } }
Quando clicco su 'modifica', la pagina json.php si apre direttamente con la risposta corretta, ma io vorrei che fosse una richiesta ajax per ottenere l'html da mettere ancora nel #mydiv

Rispondi quotando