Я новичок в JSON и пытаюсь найти способ запроса данных JSON и довести информацию до подходящего <div>
на моей странице. Я использую Volusion, поэтому доступ к коду ограничен (он в основном динамически генерируется из сценария на стороне сервера), поэтому мне нужно сделать пару обходных решений. В принципе, есть таблица продуктов, и единственный способ получить код продукта - это захватить его из URL-адреса, который создается на привязанных тегах для этих продуктов (каждый продукт настроен со ссылкой, прикрепленной к, например,/ProductDetails.asp? ProductCode = аромат для ароматического продукта). Я написал Javascript для извлечения кода продукта (с конца URL) и установки его в переменную с именем productCode.Запрос данных JSON с jQuery в функции «каждый»
В моих данных в формате JSON, я его настроить так:
[
{
"item": "aroma",
"title": "Aromatherapy Oils",
"price": "$10.00",
},
{
"item": "ah-chairbamboo",
"title": "Modern Bamboo Chair",
"price": "$100.00",
},
{
"item": "hc-mirror",
"title": "Cordless LED Lighting Pivoting Vanity Mirror",
"price": "$45.00",
},
{
"item": "macfrc",
"title": "French Macarons",
"price": "$15.00",
}
]
Что делать, если я хотел просто получить название от листа JSON, где «аромат» является элемент и добавить, что в контейнер продукта в div? Путь мой код сейчас, чтобы получить код продукта:
$(".v65-productDisplay a").each(function(){
var productHref = $(this).attr("href");
var productCode = productHref.substring(19,productHref.length);
Это работает, потому что я предупредил вне productCodes и они все правильно.
Я хочу, чтобы этот запрос JSON, очевидно, находился внутри каждой функции, поэтому он запускается для каждого продукта на странице. На английском языке я хочу сказать «где значение элемента соответствует коду продукта в листе JSON, я хочу распечатать его название и цену» (да, я понимаю, что это не отличный английский ...).
Моя первая неудачная попытка опросить его (и предупреждение о значении) находится здесь. Это находится в пределах:
$(".v65-productDisplay a").each(function(){
var productHref = $(this).attr("href");
var productCode = productHref.substring(19,productHref.length);
$.getJSON("/v/vspfiles/data/productinfo.js", function (data) {
$.each(data, function() {
if (productCode = this['item'])
alert(this['price']);
});
});
});
Это не сработало. Извините, если это сбивает с толку, я пытаюсь распутать его сам. Большое спасибо за любую помощь.
EDIT
Вот новый обновленный фрагмент следующий ответ PSCoder в поле ниже, что по-прежнему не работает именно:
$.getJSON("/v/vspfiles/data/productinfo.js", function (data) {
$.each(data, function (i,o) {
if (productCode == o.item)
alert(o.price);
});
});