Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Использование переменной в JSON запросе (https://javascript.ru/forum/jquery/59983-ispolzovanie-peremennojj-v-json-zaprose.html)

TTATPuOT 05.12.2015 15:50

Использование переменной в JSON запросе
 
Здравствуйте!
Проблема в следующем:
Есть переменная
var exemple = "categry.product"

Она собирается сама собой из значений выбранных select'ов.
В примере ниже i - тоже переменная, которая ровна числу.
$.ajax({
	url: 'data.json',
	dataType: 'json',
	async: false,
	success: function(data) {
		one_week = (data.exemple.price[i]);
	}
});

При выводе one_week я получаю ошибку:
Uncaught TypeError: Cannot read property 'price' of undefined.

Возможно ли заставить эту переменную всё таки работать?

рони 05.12.2015 17:30

Цитата:

Сообщение от TTATPuOT
i - тоже переменная

посмотрите на i и сделайте также exemple и будет вам счастье :)

TTATPuOT 05.12.2015 18:18

Цитата:

Сообщение от рони (Сообщение 398860)
посмотрите на i и сделайте также exemple и будет вам счастье :)

i - это число, exemple же числом быть не может, это слова.

рони 05.12.2015 18:22

TTATPuOT,
там возле i такие штучки есть :lol:

TTATPuOT 05.12.2015 19:38

Цитата:

Сообщение от рони (Сообщение 398865)
TTATPuOT,
там возле i такие штучки есть :lol:

Вы о квадратных скобках? :)

Поставил, не работает.
Вот так выглядит в результате:
var exemple = "categry.product"


$.ajax({
	url: 'data.json',
	dataType: 'json',
	async: false,
	success: function(data) {
		one_week = (data.[exemple].price[i]);
	}
});

Теперь ошибка в этих скобках.
Uncaught SyntaxError: Unexpected token [

Для эксперимента даже попробовал седлать обычные скобки
Uncaught SyntaxError: Unexpected token (

:(

рони 05.12.2015 19:40

TTATPuOT,
точку то уберите первую

TTATPuOT 05.12.2015 19:45

Цитата:

Сообщение от рони (Сообщение 398872)
TTATPuOT,
точку то уберите первую

Опять не работает.
var exemple = "categry.product"

$.ajax({
	url: 'data.json',
	dataType: 'json',
	async: false,
	success: function(data) {
		one_week = (data[exemple].price[i]);
	}
});


Ошибка
Uncaught TypeError: Cannot read property 'price' of undefined

рони 05.12.2015 20:07

TTATPuOT,
похоже у вас такая структура data
var exemple = "categry.product" , i = 1,
  data = {categry : {product: {price: ['1','test']}}};
  exemple = exemple.split(".")
  alert(data[exemple[0]][exemple[1]].price[i]);


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