我有一個通過AJAX提交的表單。當我點擊提交它給了我一個語法錯誤:JS語法錯誤:DOCTYPE html
SyntaxError: syntax error
[Break On This Error]
<!DOCTYPE html>
它引用第31行是這行代碼:
var formResponse = eval(msg);
以下是完整的AJAX代碼:
function jqsub() {
var $f = $('#email-form');
var $m = $('#success-message');
$.ajax({
type: 'POST',
url: $f.attr('action') + '&JSON=1',
data: $f.serialize(),
success: function(msg) {
var formResponse = eval(msg);
if (formResponse.FormProcessV2Response.success) {
$f.fadeOut();
$m.fadeIn().html('<p>Thank you for joining our mailing list.</p>');
}
},
error: function(msg) {
alert('error'+msg);
return false;
}
});
}
這個語法錯誤是什麼意思,以及如何解決這個問題?
注意:我使用的是名爲Business Catalyst的CMS,FormProcessV2Response
是其系統的一部分。
這意味着msg是無效的JavaScript。無論如何,你爲什麼使用'eval'? –