2013-10-07 3 views
0

Привет У меня есть 3 DIVs, которые содержат 1,2,3Как искать JSON в JQuery

<div>1</div> 
<div>2</div> 
<div>3</div> 

и имеют этот JSON

[{ 
    "FactoreId:1": "FactoreItems:a, b, c, d, e" 
}, { 
    "FactoreId:2": "FactoreItems:g,f" 
}, { 
    "FactoreId:3": "FactoreItems:i, k, h" 
}] 

Я хочу, чтобы, когда я парить над DIVs, что их значения проверяются.

Если DIV содержит 1 показать FactoreItems из "FactoreId:1": "FactoreItems:a, b, c, d, e", если он содержит 2 показать FactoreItems из "FactoreId:2": "FactoreItems:g,f" и так далее ....

+1

Возможный дубликат? http://stackoverflow.com/questions/4935632/how-to-parse-json-in-javascript –

+0

Просьба подробно рассказать об этом вопросе. Что вы подразумеваете под «factoreid 1 factoreitems»? Кроме того, было бы полезно, если бы вы разместили HTML-код с вашим 'div'. – Bryce

+0

Вы получаете этот JSON из другого источника в этой форме? Если структура создана вами, я бы изменил массив на объект и ключи на цифры только для более простого и более эффективного доступа. –

ответ

1

JSON вы вывесили неверен, установил его так «FactoreId»: Num, "FactoreItems": "строка"

HTML

<div>1</div> 
<div>2</div> 
<div>3</div> 

JQuery

//Fixed JSON 
var factore = [{ 
     "FactoreId": 1, 
     "FactoreItems": "a, b, c, d, e" 
    }, { 
     "FactoreId": 2, 
     "FactoreItems": "g,f" 
    }, { 
     "FactoreId": 3, 
     "FactoreItems": "i, k, h" 
    }] 
    $('div').on('mouseover', function() { 
     $(this).text("FactoreID : "+factore[$(this).text() -1].FactoreId +"FactoreItems"+ factore[$(this).text()-1].FactoreItems); 
    }); 

DEMO

Объяснение

factore: это массив с JSON

$(this).text() -1 возвращает DIVS число и -1, так как массив начинается с 0

factore[$(this).text() - 1] 
// if you mouseover div with text one the result will be factore[0] 
// then use .FactoreId to get id value 
+0

Можете ли вы рассказать мне о $ ('div'). on ('mouseover', function() { $ (this) .text ("FactoreID:" + factore [$ (this) .text() - 1] .FactoreId + "FactoreItems" + factore [$ (this) .text() - 1] .FactoreItems); }); ? – user2781200

+0

@ user2781200 обновленно с пояснения – Anton

+1

thank's alottttttttttttt – user2781200

Смежные вопросы