2010-04-14 4 views
0

Je suis en train d'essayer de poster sur aweber en utilisant simplement jquery. J'ai un appel de méthode comme ceciposter à aweber avec jQuery

$(function() { 
      $('#submit').click(function() { 
       $.post('http://www.aweber.com/scripts/addlead.pl', 
       { 
        meta_web_form_id: '12345', 
        meta_split_id: '', 
        listname: 'some_list', 
        redirect: '', 
        meta_redirect_onlist: '', 
        meta_adtracking: 'my_Web_Form', 
        meta_message: '1', 
        meta_required: 'name,email', 
        meta_forward_vars: '', 
        meta_tooltip: '', 
        email : '[email protected]', 
        name : 'tester testing' 
       }, 
       function (data) { 
        alert('data load: ' + data); 
       }); 
      }); 
     }); 

il est supposé prendre le résultat de la poste et l'alerter dans une boîte. Lorsque j'essaie de le faire manuellement avec des formulaires cela fonctionne mais me redirige vers une page 'form-sorry.htm', ce qui est bien, je me demandais s'il y avait un moyen d'afficher le résultat final de la publication. Im devinant hte addlead.pl est juste une page d'affichage sans réponse.

+0

Je suppose que votre code ne fonctionne pas sur www.aweber.com? –

Répondre

3

Vos données $.post() semblent correctes, mais puisque vous attachez un gestionnaire de clic à votre bouton de soumission, le formulaire fonctionnera normalement et redirigera. Les données sont également envoyées via $.post() en même temps.

Ici, j'utilise jQuery .submit() et saisissant dynamiquement les valeurs de nom et de courriel à utiliser dans la méthode $.post(). Je puis effacer le formulaire en le réinitialisant, afficher un message de confirmation à l'utilisateur et return false; pour empêcher la fonctionnalité de formulaire normal.

Pour afficher le résultat final, vous pouvez toujours faire alert(data); avant le return false; mais il s'affichera comme un objet, vous devrez donc travailler avec cela.

Vous pouvez également consulter l'onglet Réseau dans Chrome Dev Tools pour votre message et les données envoyées.

Espérons que cela aide.

$('#form_id').submit(function() { 
    var nameVal = $('input[name="name"]').val(); 
    var emailVal = $('input[name="email"]').val(); 

    $.post('http://www.aweber.com/scripts/addlead.pl', { 
     meta_web_form_id: '123456789', 
     meta_split_id:  '', 
     listname:   'listNameHere', 
     redirect:   '', 
     meta_adtracking: 'newsletter', 
     meta_message:  '1', 
     meta_required:  'name,email', 
     meta_tooltip:  '', 
     name:    nameVal, 
     email:    emailVal 
    }); 

    $('#form_id')[0].reset(); 

    alert('Email sent!'); 

    return false; 
}); 
Questions connexes