Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Объясните с ajax (https://javascript.ru/forum/jquery/49370-obyasnite-s-ajax.html)

cha0s 10.08.2014 15:57

Объясните с ajax
 
$('.robots').bind('click', function() {
					$.ajax({
						url: 'index.php?route=catalog/category/robots',
						type: 'post',
						data: $(this).attr('value'),
						dataType: 'json',
						success: function(json) {
						alert('ok');
						}
					});
				});


и соотвественно php

public function robots() {
		print_r('tut');
		$json=true;
                }



URL Верный в ajax, не каких ошибок в консоли нету, но нехрена не происходит не на стороне ajax в разделе success, не на стороне php... в чем косяк?

Задача такая что при клике на checkbox с классом robots, передается ajax запрос с его value значением и все.

Safort 10.08.2014 16:19

Так а где вызов этого метода в php? Там есть просто его определение, а вызова я не вижу.

cha0s 10.08.2014 16:36

чтоб вызвать print_r('tut'); нужно определение? он же просто ссылается счас на мою функцию у которой даже первая строка не выполняется, про какое там уже определение можно говорить которое дальше должно идти)

ixth 10.08.2014 16:42

Не очень разбираюсь в PHP, но print_r вроде бы совсем не json отдает. Тебе нужно вызывать json_encode. И что значит $json = true?

cha0s 10.08.2014 16:49

print_r это обычный вывод более подробный чем echo, не какого json вывода там нету, это там прописано для того чтоб видеть выполняется ли вообще функция эта(направляет ли он туда) вообщем почти одно и тоже как в js используется alert, для дебаггинга если можно так сказать) , упс насчет $json = true не обращай внимания;D ничего не значит.

ixth 10.08.2014 17:00

У тебя dataType: 'json' в запросе указано. Если print_r приходит с сервера, а jQ пытается его парсить как json, то конечно все ломается. Попробуй просто '{"result": "ok"}' вывести.

cha0s 10.08.2014 17:18

а понял, да в этом проблема была) спасибо.


Часовой пояс GMT +3, время: 06:16.