2016-12-15 2 views
0

Я вытаскиваю из базы данных JSON и показываю продукт на основе его идентификатора в DIV. Если идентификатор совпадает, он отображает правильный элемент и его содержимое в DIV.Необходимо перезагрузить JSON в зависимости от местоположения местоположения окна

Я попытался изменить логику, чтобы она отображала продукт на основе того, соответствует ли UPC продукту window.location.hash. Это работает для первого элемента, но ни один из других. Пока не повезло. Надеюсь, кто-то может помочь мне в этом. Ниже мой код спасибо.

var itemName = ''; 
var itemUPC = ''; 
var itemDesc = ''; 
var itemOZ = ''; 
var itemImage = ''; 

var compareHash = window.location.hash; 
var compareUPC = ''; 

$.each(json, function(i, item) { 

    compareUPC += '#' + item.itemFullUPC; 

    if (compareHash == compareUPC) { 

    itemName += '<h1>' + item.itemName + '</h1>'; 
    itemUPC += item.itemFullUPC; 
    itemDesc += '<p>' + item.itemDescription + '</p>'; 
    itemOZ += '<h2>' + item.itemPackSize + '</p>'; 
    itemImage += '<img class="img-responsive img-rounded center-block" src="' + item.imageURL + '">'; 
    } 

    $('#productTitle').html(itemName); 
    $('#productUPC').html(strippedUPC); 
    $('#productDescription').html(itemDesc); 
    $('#productOZ').html(itemOZ); 
    $('#productImage').html(itemImage); 


}); 
+0

образца? + = выполнит предыдущий результат с новым ... – Nico

+0

@ Нико, что вы предлагаете изменить? – Tom

ответ

1

Вы, вероятно, хотите onhashchange

if ("onhashchange" in window) { 
    alert("The browser supports the hashchange event!"); 
} 

function locationHashChanged() { 
    compareUPC += '#' + item.itemFullUPC; // or whatever you need to test here 
    if (compareHash == compareUPC) { 
     getJSON(); 
    } 
} 

// window.onhaschange=locationHashChanged; // or  
$(window).on("hashchange",locationHashChanged); 
+0

спасибо, что это похоже на работу! функция get JSON у вас есть, где я бы поставил каждый цикл? – Tom

+0

да :) - Я предположил, что вам также нужно ajax JSON или что-то там – mplungjan

+0

ok great !! спасибо, много! я попробую – Tom