Yii+Jquery $.post?

Добрый день.



Пробую отправить данные на сервер методом $.post



Представление

<script>
		$('#add_element_btn').click(function()
		{
			$.post("<? echo Yii::app()->baseUrl; ?>/catalog/additem/", {
				uuid: <? echo $catalog->uuid; ?>,
				name : $('#input_name').val()
			},
				function(data){
     					alert(data.status); 
			}, "json");
		});
	</script>




Контроллер

<?<br>
class CatalogController extends CController<br>
{<br>
<br>
	public function actionAdditem()<br>
	{<br>
<br>
	//	$catalog = Catalogs::model()->findbyPk(1);<br>
<br>
		print json_encode(array("status"=>'ok'));<br>
	}<br>
}<br>
?><br>




В таком виде alert(data.status); работает. Но перестает, если убрать комментарий со строки

// $catalog = Catalogs::model()->findbyPk(1);



Подскажите, пожалуйста, в чем может быть проблема?
  • Вопрос задан
  • 4016 просмотров
Пригласить эксперта
Ответы на вопрос 6
sck_v
@sck_v
exflow.io
Вместо "<? echo Yii::app()->baseUrl; ?>/catalog/additem/" лучше использовать CController::createUrl('catalog/additem')
Ответ написан
Комментировать
@Nc_Soft
$catalog = Catalogs::model()->findbyPk(1);
генерит какой-то вывод, это же очевидно
Ответ написан
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
1) Хоть это не косается вашего вопроса, но используйте registerScript для публикации JS-а.
2) Используйте в JS относительные пути — вам же лучше.
3) Что бы посмотреть в чем дело, откройте Firebug/Dragonfly или что там есть вод рукой на вкладке сети и посмотрите ответ с сервера.
Ответ написан
taliban
@taliban
php программист
А Вы не пробовали посмотреть что приходит с сервера при раскоментировании? Или Вам прикольно наугад гадать в чем проблема? Берем _любой_ браузер и смотрим результат аякса, без всяких алертов и подобного бреда, видим результат и можем не спрашивать в чем проблема. Как малые дети, ей богу.
Ответ написан
d4rkr00t
@d4rkr00t
А модель точно Catalogs называется и попробуйте просто по тому урлу пройти по котоому запрос отправляет, не возвращает ли ошибок
Ответ написан
Комментировать
@DoooMer
->findbyPk(1);
я тут вижу опечатку. Попробуйте ->findByPk(1);
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
22 нояб. 2024, в 06:06
1500 руб./в час
22 нояб. 2024, в 06:04
1 руб./за проект
22 нояб. 2024, в 03:54
1500 руб./за проект