Проблем с AJAX form
Здравейте, не мога да се оправя с ajax формата. Потърсих в интернет да видя как става формата. В момента съм написал този код:
$('form').submit(function(event){ var formData = { 'username' : $('input[name=username]').val(), 'password' : $('input[name=pass]').val(), 'confirmPassword' : $('input[name=confirmPass]').val(), 'email' : $('input[name=email]').val() }; $.ajax({ type: "post", url: "register", data: formData, dataType: 'json', encode: true }).done(function(data){ }); event.preventDefault(); });
но не работят нещата.
Опитах, но не става. Проблемът е, че връща статус код 200ОК при всякакви действия.
200 значи, че заявката е стигнала и нищо не е гръмнало. Кои са тези обстоятелства, при които не трябва да е така? На сървъра получаваш ли пратените данни :?
Нищо не излиза когато натиснат копчето submit - дори, ако съм въвел грешни данни. Сега работят над този код - тук заявките се пращата и всичко е ок. Но как мога да изпиша грешките, ако не са въведени правилно паролата или името и след това да пренасочва потребителя към страницата за логване?
$("#ajaxform").submit(function(e)
{
var postData = $(this).serializeArray();
var formURL = $(this).attr("action");
$.ajax(
{
url : formURL,
type: "POST",
data : postData,
success:function(data, textStatus, jqXHR)
{
},
error: function(jqXHR, textStatus, errorThrown)
{
}
});
e.preventDefault();
});
$("#ajaxform").submit();
В error callback-а получаваш респонса, предполагам като първи аргумент. Трябва да му направиш съответната текстообработка и да направиш нещо с DOM дървото според текстообработката, която си направил. Например ако получаваш чист текст, и на него пише "error" - проверяваш това и апендваш някъде текст. Ако връщаш JSON то парсваш JSON-a ($.parseJSON) и работиш по ключовете и стойностите му.