Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 14.03.2014 13:06:04

Не срабатывает AJAX

Пытаюсь сохранить комментарий с помощью ajax, но происходит направление, указанное в url.
Вот ajax код:

// public/scripts/scripts.js
$(document).ready(function() {
        $("#form-add-comment").submit(function() {
		var text = $("#text").val();
		var commentable_id = $("#commentable_id").val();
		var commentable_type = $("#commentable_type").val();
		var post_id = $("#post_id").val();

		$.ajax({
			url: 'new_comment',
			type: 'POST',
			data: { text: 'text', commentable_id: 'commentable_id', commentable_type: 'commentable_type', post_id: 'post_id' },	
			dataType: 'json',

			success: function(result) { 	
	    		      $(".someText").html("?");
	    	        }
		});
		return false;
	});
});

Кусок кода отображения поста (и связанных с ним комментариев):

// views/posts/show.blade.php
<div class="comments">
	<ul>
		@foreach($post->comments as $comment)
			<li>@include('partials.comment', $comment)</li>
		@endforeach
	</ul>
</div>

<div class="someTetx"></div>

Контроллер:

// CommentController.php
public function create()
	{
               // тут сохраняем комментарий

		return Response::json(array('message' => 'Вы успешно сохранили комментарий.'));
	}

Роутинг:

Route::post('new_comment', array('uses' => 'CommentController@create'));

Собственно происходит направление на 'new_comment' и показ там json.

Не в сети

#2 14.03.2014 13:27:36

Re: Не срабатывает AJAX

Перенаправление происходит из-за ошибки в JavaScript, из-за чего выполнение не доходит до return false; и событие не отменяется. Либо включи в отладчике (Firebug) режим Persist для консоли, либо добавь в начало onsubmit e.preventDefault().

Не в сети

Подвал раздела