If I have the following DOM elements
<div class="item">content1</div>
<div class="item">content2</div>
how, using jQuery and Javascript, do I construct a JSON object like the following?
[{ 
'classname': 'item',
'content': 'content1'
}
{
'classname': 'item',
'content': 'content2'
}]
Any recommended further reading?
var data = $('div.item').map(function(){
    return {
        classname: 'item',
        content: $(this).text()
    };
}).get();
DEMO: http://jsfiddle.net/nDE7e/
http://jsfiddle.net/24JjD/
var datas = [{ 
    'classname': 'item',
    'content': 'content1'
    }, {
    'classname': 'item',
    'content': 'content2'
    }
];
$.each(datas, function(key, value) {
    $('body').append('<div class="'+value.classname+'">'+value.content+'</div>');
});
Correct answer :
http://jsfiddle.net/tS9r5/
var datas = [];
$('div.item').each(function() {
   var data = { 
       classname: this.className, 
       content: $(this).text()
   };
   datas.push(data);
});
console.log(datas);
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With