Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 17.03.2014, 13:37
Новичок на форуме
Отправить личное сообщение для DeSharky Посмотреть профиль Найти все сообщения от DeSharky
 
Регистрация: 17.03.2014
Сообщений: 5

Доступ к элементам объекта
Все привет. Я только изучаю js, сильно прошу не пинать.
Имеется объект такого вида:
{ "results":
{ "fields": [ "Name", "Shirota", "Dolgota", "Contacts" ],
"rows": [ { "Name": "Bamberg", "Shirota": "48.725925", "Dolgota": "44.541419", "Contacts": "17" },
{ "Name": "Kalash", "Shirota": "48.725935", "Dolgota": "44.541419", "Contacts": "17" } ] },
"errors": { "length": 0 } }

Мне нужно выдернуть значения. Как правильно это сделать?
Пробовал такой код:
Код:
    jQuery.each(obj, function(i, val) {
      $("#" + i).append(document.createTextNode(" - " + val));
     });
Но он возвращает Object
Ответить с цитированием
  #2 (permalink)  
Старый 17.03.2014, 14:13
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,205

Сообщение от DeSharky
Имеется объект такого вида:
Сообщение от DeSharky
Как правильно это сделать?
Так понятно?

<!DOCTYPE html>
<html>
<head>
<script src='http://code.jquery.com/jquery-latest.js'></script>
<!--
<link rel='stylesheet type=text/css href=tmp.css' />
-->
<style type='text/css'>
</style>
<script type='text/javascript'>
var obj={ 
	"results": { 
		"fields": [ "Name", "Shirota", "Dolgota", "Contacts" ], 
		"rows": [ 
			{ "Name": "Bamberg", "Shirota": "48.725925", "Dolgota": "44.541419", "Contacts": "17" },
			{ "Name": "Kalash", "Shirota": "48.725935", "Dolgota": "44.541419", "Contacts": "17" } 
		] 
	}, 
	"errors": { "length": 0 } 
}
jQuery.each(obj, function(i, val) {
	alert(i);
});
</script>
</head>
<body>
</body>
</html>
Ответить с цитированием
  #3 (permalink)  
Старый 17.03.2014, 14:35
Новичок на форуме
Отправить личное сообщение для DeSharky Посмотреть профиль Найти все сообщения от DeSharky
 
Регистрация: 17.03.2014
Сообщений: 5

Как работает то понятно, только результат не тот, что нужен - возвращает
results и errors,а мне нужны "внутренности"
Ответить с цитированием
  #4 (permalink)  
Старый 17.03.2014, 14:39
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,205

Сообщение от DeSharky
возвращает
results и errors
так ты по ним и бежишь...

Сообщение от DeSharky
а мне нужны "внутренности"
Тгда просто бери их и все дела.
Ответить с цитированием
  #5 (permalink)  
Старый 17.03.2014, 14:45
Новичок на форуме
Отправить личное сообщение для DeSharky Посмотреть профиль Найти все сообщения от DeSharky
 
Регистрация: 17.03.2014
Сообщений: 5

Код:
		jQuery.each(results.results.fields, function(i, val) {
			alert(i);
		});
попробовал так - не работает, выдает по очереди от 0 до 3
Ответить с цитированием
  #6 (permalink)  
Старый 17.03.2014, 15:08
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,205

Сообщение от DeSharky
попробовал так - не работает
Во тебя прет!

var obj={ 
	"results": { 
		"fields": [ "Name", "Shirota", "Dolgota", "Contacts" ], 
		"rows": [ 
			{ "Name": "Bamberg", "Shirota": "48.725925", "Dolgota": "44.541419", "Contacts": "17" },
			{ "Name": "Kalash", "Shirota": "48.725935", "Dolgota": "44.541419", "Contacts": "17" } 
		] 
	}, 
	"errors": { "length": 0 } 
}
for (var i=0; i<obj.results.fields.length; i++) {
	alert(obj.results.fields[i]);
};
Ответить с цитированием
  #7 (permalink)  
Старый 17.03.2014, 15:14
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,205

Сообщение от DeSharky
а мне нужны "внутренности"
Как вариант

var obj={ 
	"results": { 
		"fields": [ "Name", "Shirota", "Dolgota", "Contacts" ], 
		"rows": [ 
			{ "Name": "Bamberg", "Shirota": "48.725925", "Dolgota": "44.541419", "Contacts": "17" },
			{ "Name": "Kalash", "Shirota": "48.725935", "Dolgota": "44.541419", "Contacts": "17" } 
		] 
	}, 
	"errors": { "length": 0 } 
}
for (var j=0; j<obj.results.rows.length; j++) {
	for (var i=0; i<obj.results.fields.length; i++) {
		var fld=obj.results.fields[i];
		alert(fld+'['+j+']='+obj.results.rows[j][fld]);
	};
};
Ответить с цитированием
  #8 (permalink)  
Старый 17.03.2014, 15:24
Новичок на форуме
Отправить личное сообщение для DeSharky Посмотреть профиль Найти все сообщения от DeSharky
 
Регистрация: 17.03.2014
Сообщений: 5

О, вот это огонь, то что нужно. Спасибо!
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Доступ к значениям свойств объекта в цикле Bandicoot Общие вопросы Javascript 4 04.02.2016 11:44
Доступ к элементам соседнего окна v_n_smirnov Events/DOM/Window 1 22.08.2012 18:08
Как получиться доступ к элементам не своей страницы? AlkaLoiD Общие вопросы Javascript 4 29.11.2010 12:47
Доступ к элементам Git Элементы интерфейса 3 20.03.2010 19:26
Доступ к элементам с нетривиальными id shulya jQuery 7 12.02.2010 21:41