我正在整合MailChimp API以通過Ajax提交表單,但我在整合它們提供的表單時遇到了很多麻煩。我認爲這是一個很好的機會讓我瞭解更多關於Ajax的知識,但是我不能在我的生活中找出我的電話出錯的地方。下面是我在我的Ajax調用:爲什麼不是我的AJAX呼叫加載?
$('#submit-button').click(function(){
var email = $('input#email').val();
if(email == "[email protected]"){
$('p#empty-error').fadeIn();
return false;
}
var datastring1 = 'email=' + email;
$.ajax({
type: 'POST',
url: 'mailchimp/store-address.php',
data: datastring1,
success: function(){
alert('success');
}
});
return false;
});
而且PHP文件沿着標籤:
function storeAddress(){
// Validation
if(!$_POST['email']){ return "No email address provided"; }
if(!preg_match("/^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*$/i", $_POST['email'])) {
return "Email address is invalid";
}
require_once('MCAPI.class.php');
// grab an API Key from http://admin.mailchimp.com/account/api/
$api = new MCAPI('66a7f17d87e96e439f7a2837e2963180-us1');
// grab your List's Unique Id by going to http://admin.mailchimp.com/lists/
// Click the "settings" link for the list - the Unique Id is at the bottom of that page.
$list_id = "b1ebe7c0ba";
if($api->listSubscribe($list_id, $_POST['email'], '') === true) {
// It worked!
return 'Success! Check your email to confirm sign up.';
}else{
// An error ocurred, return error message
return 'Error: ' . $api->errorMessage;
}
}
// If being called via ajax, autorun the function
if($_POST['ajax']){ echo storeAddress(); }
?>
劇本最初寫通過Ajax的原型提交,我試圖移動事情到jQuery。我很想知道我不理解做到這一點。
更多信息:如果它的任何幫助,下面的調用工作,如果它在我的HTML,如果我刪除完全的JavaScript:
<?php require_once('mailchimp/store-address.php'); if($_POST['submit']){ echo storeAddress(); } ?>
你的javascript控制檯給你提供任何反饋嗎? – thetaiko 2010-02-18 23:18:00
你得到的錯誤是什麼?你嘗試過'錯誤:功能(味精){警報(味精);}'? – Jason 2010-02-18 23:18:43
反饋,但沒有任何有助於我的知識:XHR完成加載:「http:// localhost:8888/qworky/mailchimp/store-address.php」。 – 2010-02-18 23:31:29