2010-04-14 4 views
0

그냥 jquery를 사용하여 aweber에 게시하려고합니다.jQuery로 aweber에 게시

$(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'페이지로 리디렉션됩니다. 게시물의 최종 결과를 표시하는 방법이 있는지 궁금합니다. Im hte addlead.pl 추측은 응답이없는 게시 페이지 일뿐입니다.

+0

나는 귀하의 코드가 www.aweber.com에서 실행되고 있지 않습니까? –

답변

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