Webflow и AJAX
Здравствуйте. У меня сайт выдаёт странную ошибку. Суть проблемы в том, что есть сайт, свёрстанный в программе webflow. Там есть форма, которая при удачной отправке выводит сообщение с помощью css+js, что всё мол успешно, в случае отправки формы. А если данные не отправлены на сервер, то ошибка.
Я делаю отправку формы в помощью jquery AJAX и несмотря на то, что запрос успешно отправляется, в вёрстке всё равно выводится, что сообщение не отправлено. Уважаемые профессионалы, в чём может быть проблема и как её решить? Хотелось бы, чтобы отчёт об отправки сообщения выводился красиво, а не просто через alert("Сообщение доставлено"); Есть ещё одна проблема. Если я делаю AJAX запрос через метод GET, то всё отправляется успешно. А если через POST, то выводит следующую ошибку "Failed to load resource: the server responded with a status of 405 (Method Not Allowed)" В чём может быть проблема? Можно конечно и через GET отправлять, но хотелось бы и в этом разобраться. Сам сайт вот: http://itcity48.ru/#email-form |
вот рабочий скрипт
<script type="text/javascript">
makeWebflowFormAjax = function( form, successCallback, errorCallback ) {
form.each(function(){
var form = $(this);
form.on("submit", function(){
var container = form.parent();
var doneBlock = $(".w-form-done", container);
var failBlock = $(".w-form-fail", container);
var action = form.attr("action");
var method = form.attr("method");
var data = form.serialize();
// call via ajax
$.ajax({
type: method,
url: "send.php",
data: data,
success: function (resultData) {
if (typeof successCallback === 'function') {
// call custom callback
result = successCallback(resultData);
if ( ! result ) {
// show error (fail) block
form.hide();
doneBlock.show();
failBlock.hide();
console.log(e);
return;
}
}
// show success (done) block
form.hide();
doneBlock.show();
failBlock.hide();
},
error: function (e) {
// call custom callback
if (typeof errorCallback === 'function') {
errorCallback(e)
}
// show error (fail) block
form.hide();
doneBlock.show();
failBlock.hide();
console.log(e);
}
});
// prevent default webdlow action
return false;
});
});
}
</script>
<script type="text/javascript">
makeWebflowFormAjax( $("form") );
</script>
|
| Часовой пояс GMT +3, время: 15:35. |