2017-09-27 46 views
0

我想訪問該數組的每個值。通過jquery訪問HTML標記的屬性

例如,我怎麼能通過jquery得到「very_satisfied」的值。

<div id="analysis" data-valuations='[{"very_satisfied":7,"satisfied":5,"neutral":1,"sad":1,"angry":1}]'></div> 

我希望得到答案。

+0

'$( '#分析')數據('估值')。split('},{')[0] .split(':')[1]' –

+0

'eval($('#analysis')。data('valuation'))[0] (',').very_satisfied' –

+0

'$('#analysis')。data('valuations')。slice(2,-2).split('},{')。map(v => v.split ).filter(v => v [0] =='very_satisfied')[0] [1]' –

回答

1

首先,您需要在屬性中擁有有效的JSON。就像這樣:

<div id="analysis" data-valuations='[{"very_satisfied":7},{"satisfied":5},{"neutral":1},{"sad":1},{"angry":1}]'></div> 

(只需要一個屬性和屬性值singlequotes雙引號) 然後:

var elem = $('#analysis'); //element 
var parsed = JSON.parse(elem.attr('data-valuations')); //parse attribute value 
var very_satisfied = parsed[0].very_satisfied; 

這裏是link to plunker

+0

是的,對不起,我有一個有效的JSON,我只是在這裏寫錯了,現在它的作品非常感謝。 –