Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 07.08.2014, 15:27
Аспирант
Отправить личное сообщение для VolodinAS Посмотреть профиль Найти все сообщения от VolodinAS
 
Регистрация: 24.11.2012
Сообщений: 44

Не работает $.parseJSON
Получаю ответ от сервера в формате {"param":value}, перенаправляю на функцию обработки:
function obrab(dt){
	obj = $.parseJSON(dt);
	switch(obj.stat){
		case "loadmsg":
			loadNewMsg();
		break;
		case "wait":
		break;
		case "zero":
			$('#mainmsg').html('Сообщений нет');
		break;
	}
}


Но вот что выдает консоль:
Код:
Uncaught TypeError: undefined is not a function VM3659:21
obrab VM3659:21
$.ajax.success VM3659:41
success !jquery.js:3645
onreadystatechange
и жалуется именно на строчку "obj = $.parseJSON(dt);"

Думал, может проблема в импорте скрипта (<script src="...">), но этого не может быть, потому что тогда бы не работала функция:
$(document).ready(function(){
	wMainChat = $('#mainchat').width();
	wMainWindow = $('#mainwindow').width();
	wMainRate = (wMainWindow - wMainChat) - 23;
	$('#mainrate').css('width',wMainRate);
	
	hMainChat = $('#mainchat').height();
	hMainForm = $('#mainform').height();
	hMainMsg = (hMainChat - hMainForm) - 27;
	$('#mainmsg').css('height',hMainMsg);
	
	wMainForm = $('#mainform').width();
	$('#msg').css('width',wMainForm)
	$('#msg').css('height',hMainForm);
	
	checkNewMessanges();
});


и даже она:

function checkNewMessanges(){
	$.ajax({
		type: "POST",
		url: "PHP_chatCounts.php",
		data: 'vk_id=<?=$vk_id?>',
		success: function(answer){
			//obrab(answer);
			//alert(answer);
		}
	});
	checkNewMessangesID = setTimeout(function(){checkNewMessanges()},5000);
}


И поэтому я даже не знаю, что не так... Помогите, будьте добры
Ответить с цитированием
  #2 (permalink)  
Старый 08.08.2014, 14:12
Аспирант
Отправить личное сообщение для VolodinAS Посмотреть профиль Найти все сообщения от VolodinAS
 
Регистрация: 24.11.2012
Сообщений: 44

Сообщение от Rise Посмотреть сообщение
VolodinAS, ответ уже преобразован к объекту (это $.parseJSON(dt) лишнее)
Хм, хорошо, спасибо, попробую
Ответить с цитированием
  #3 (permalink)  
Старый 08.08.2014, 14:45
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

Сообщение от Rise
VolodinAS, ответ уже преобразован к объекту (это $.parseJSON(dt) лишнее)
только если добавлен параметр dataType: 'json' иначе вернет просто текст
__________________
хм Russians say завтра but завтра doesn't mean "tomorrow" it just means "not today."
HTML5 history API рассширение для браузеров не поддерживающих pushState, replaceState
QSA CSS3 Selector Engine
Ответить с цитированием
  #4 (permalink)  
Старый 08.08.2014, 17:11
Аспирант
Отправить личное сообщение для VolodinAS Посмотреть профиль Найти все сообщения от VolodinAS
 
Регистрация: 24.11.2012
Сообщений: 44

Сообщение от devote Посмотреть сообщение
только если добавлен параметр dataType: 'json' иначе вернет просто текст
Да, сейчас и это попробую, потому что предыдущее сообщение не решило проблему.
Ответить с цитированием
  #5 (permalink)  
Старый 08.08.2014, 17:20
Аспирант
Отправить личное сообщение для VolodinAS Посмотреть профиль Найти все сообщения от VolodinAS
 
Регистрация: 24.11.2012
Сообщений: 44

Сообщение от devote Посмотреть сообщение
только если добавлен параметр dataType: 'json' иначе вернет просто текст
Спасибо, сработало. А я и забыл про этот dataType....
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
JS: работает на сервере, не работает из папки -majestic- Общие вопросы Javascript 2 02.08.2012 14:41
Не работает push! Динамическая вставка TSEH25 ExtJS 5 03.07.2012 13:00
jQyery функция странно работает! Midel Общие вопросы Javascript 4 08.04.2012 13:40
помогите найти ошибку (работает в IE но не работает в Firefox) Len4ik Javascript под браузер 2 11.05.2010 15:41
Safari + ajax некорректно работает, а в других работает demi AJAX и COMET 35 15.07.2009 14:11