Я пытаюсь отправить форму через AJAX и предотвратить перенаправление после отправки формы.Я не понимаю, почему у меня возникла эта проблема, поскольку я установил для autoRender значение false.
Код контроллера
function add() {
$this->autoRender = false;
if (!empty($this->data)) {
$this->data['Comment']['user_id'] = $this->Auth->user('id');
$this->Comment->create();
if ($this->Comment->save($this->data)) {
}
}
}
Обработчик событий JS
$(".submit_comment").live("submit",commentSubmitHandler);
function commentSubmitHandler(event){
$.ajax({
type: "post",
url: $("#webroot").val() + "comments/add",
data: data,
dataType: "json",
success: function(data){
alert("win");
},
error: function(data){
alert("fail");
}
});
return false;
}
Данные формы отправляются и сохраняются просто отлично, но какого чёрта она покидает страницу?Кроме того, кажется, что он делает это до завершения js, потому что предупреждения на самом деле никогда не отключаются.Поэтому существует прямое перенаправление прямо из действия контроллера «добавить».