2010-04-14 47 views
0

我試圖張貼到只使用jquery的aweber。我有一個像這樣的方法調用張貼到jweber與weweber

$(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); 
       }); 
      }); 
     }); 

它應該採取帖子的結果並在一個盒子中提醒它。當我嘗試手動使用表單工作,但將我重定向到'form-sorry.htm'頁面,這很好,只是想知道是否有方法顯示帖子的最終結果。我猜測hte addlead.pl只是一個沒有迴應的發帖頁面。

+0

我認爲你的代碼沒有在www.aweber.com上運行? – 2010-04-14 17:57:58

回答

3

您的$.post()數據看起來不錯,但由於您將點擊處理程序附加到您的提交按鈕,表單仍然可以正常運行並重定向。數據也同時通過$.post()發送。

這裏我使用jQuery .submit()並動態地獲取名稱和電子郵件值,以便在$.post()方法中使用。然後我通過重置它來清除表單,向用戶顯示一條確認消息,然後return false;阻止正常的表單功能。

爲了顯示最終結果,您始終可以在return false;之前執行alert(data);,但它會顯示爲對象,因此您必須使用該對象。

您還可以在Chrome開發工具中查看您的帖子和正在發送的數據的網絡標籤。

希望這會有所幫助。

$('#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; 
});