我正在为mailchimp发送一个包含电子邮件字段的表单,其中包含ajax。
表单发送正常,因为我收到来自mailchimp的确认电子邮件但在我的控制台中我得到了这个:
Resource interpreted as Script but transferred with MIME type text/html: "http://markdunbavan.us4.list-manage.com/subscribe/post?u=946312c950b11b5518…markdunbavan.co.uk&b_946312c950b11b551890e28f7_f3f7eb34b3=&_=1395094714933". jquery.js?body=1
表单是从rails应用程序发送的,但这无关紧要,这是我的javascript:
var $form = $('#mc-embedded-subscribe-form');
function register($form) {
$.ajax({
type: $form.attr('method'),
url: $form.attr('action'),
data: $form.serialize(),
cache : false,
crossDomain: true,
dataType : 'jsonp',
contentType: "application/html;",
error : function(err) { $('#notification_container').html('<span class="alert">Could not connect to server. Please try again later.</span>'); },
success : function(data) {
if ( data.result != "success" ) {
var message = data.msg.substring(4);
$('#notification_container').html('<span class="alert">'+message+'</span>');
}
else {
var message = data.msg;
$('#notification_container').html('<span class="success">'+message+'</span>');
}
}
});
}
$('#mc-embedded-subscribe').on('click', function(event) {
event.preventDefault();
register($form);
});
有人能指出我正确的方向吗?
答案 0 :(得分:0)
从错误中,我怀疑这是你的问题:
dataType : 'jsonp',
contentType: "application/html;",
试试这个:
dataType : 'jsonp',
contentType: "application/javascript",
您发送的内容不能是HTML和JSON。它必须是一个或另一个。所以Rails警告你,它很困惑,但是在警告中可以看到JavaScript而不是HTML:Resource interpreted as Script but transferred with MIME type text/html
。