Я обновляю старый сайт и бегаю в икоту. Я переписываю контактную форму для использования ajax, а не для обычной страницы подачи/благодарности. Действие формы отправляется на сторонний сайт (у меня нет доступа к PHP, который анализирует данные), и он работает с базовой формой. Когда я отправляю с использованием ajax, форма отправляется, ошибки не генерируются, но данные, помещенные в БД третьим кодом, пустые. Те же имена форм, одинаковые значения. Вот мои ЯШ:Используйте данные формы вместо строки запроса с ajax
$("#contactForm input,#contactForm textarea").jqBootstrapValidation({
preventSubmit: true,
submitError: function($form, event, errors) {
// additional error messages or events
},
submitSuccess: function($form, event) {
event.preventDefault(); // prevent default submit behaviour
// get values from FORM
var fname = $("#fname").val();
var lname = $("#lname").val();
var email = $("#email").val();
var cphone = $("#cphone").val();
var comments = $("#comments").val();
var address = $("#address").val();
var city = $("#city").val();
var zip = $("#zip").val();
$.ajax({
url: "https://my.serviceautopilot.com/AddEstimate.aspx?id=*************&wid=****************",
type: "POST",
dataType: 'jsonp',
processData: false,
data: {
fname: fname,
lname: lname,
cphone: cphone,
email: email,
comments: comments,
address: address,
city: city,
zip: zip
},
...
На оригинальной submition данные выглядели так: Я считаю его потому, что данные передаются в виде данных на оригинал, но как часть строки запроса в второй пример. Правильно ли я предполагаю это? Есть ли другая проблема с кодом?
Я пробовал использовать объект данных формы, который не работал, он все еще появился в строке запроса и все еще прошел через пробел. Я попытался настроить тип данных, тип контента, processdata = false, но не повезло. Раньше у меня был доступ к серверному коду, и у меня не было отладки проблем, и я делал легкие исправления для такого рода вещей, но я немного потерял на этом этапе. Спасибо вам всем.
Спасибо за комментарий. Я действительно использовал его, чтобы обойти политику одного и того же происхождения. Так что есть другой способ. Это хорошо знать – Speed