2013-07-30 61 views
0

我想將表單數據發送到MailChimp而不重定向到另一個頁面。相反,我想要一個彈出窗口顯示「感謝您註冊!」這怎麼能實現?我試圖使用JQuery.post()發送數據,但我不認爲這是因爲JQuery.post()的同源策略工作。 .fail()會運行,我無法從中獲取任何錯誤消息。請幫忙。發送表單數據到Mailchimp而不重定向到另一頁

[編輯]:下面加

$("form.newsletter-signup-form").submit(function(event) { 
    /* stop form from submitting normally */ 
    event.preventDefault(); 
    /* get some values from elements on the page: */ 
    var url = "http://empirecovers.us1.list-manage1.com/subscribe/post"; 
    /* Send the data using post */ 
    var posting = $.post(url); 
    /* Put the results in a div */ 
    posting.done(function(data) { 
     alert("done"); 
    }); 

    posting.fail(function(XMLHttpRequest, textStatus, errorThrown) { 
     alert("XMLHttpRequest: " + XMLHttpRequest.statusText); 
     alert("textStatus: " + textStatus); 
     alert("errorThrown: " + errorThrown); 
    }); 
    posting.always(function() { alert("finished"); }); 
}); 

[注]代碼:我也想提一提,我使用ASP.NET來實現這一點。我注意到有一個MailChimp API用於發送數據。

+2

你想通過jQuery發送跨域POST嗎?你不應該嘗試使用代理嗎? –

+0

不應該有XSS限制。發佈一些代碼。 – raam86

回答

1

您絕對應該發佈到您自己的ASP.NET頁面或處理程序或控制器或您正在使用的任何內容,然後將手動或通過API從您的Web服務器而不是客戶端生成對MailChimp的請求。

這使您可以控制任何需要的操作,包括傳遞任何密鑰或MailChimp API所需的任何密鑰,它可以讓您控制您希望用戶體驗的內容,因爲您將擁有通過AJAX發佈到你自己的頁面的能力。

相關問題