Si j'ai une liste comme suit:
<ul class="nameList">
<li value="1">Bob</li>
<li value="2">Frank</li>
<li value="3">Sally</li>
</ul>
3 Réponses :
var items = [];
$('ul.nameList').children().each(function() {
var $this = $(this);
var item = { id: $this.attr('value'), title: $this.html() };
items.push(item);
});
jQuery a en fait quelque chose d'intégré pour la construction de la matrice: Carte () a> qui construira une gamme d'objets correspondant à la structure JSON que vous après. Ensuite, à JSON Serialize que, utilisez JSON.Stringify, qui est intégré à de nouveaux navigateurs et disponibles pour les plus âgés en incluant JSON2.JS : p> // Produces [{'id':1,'title':'bob'},{etc},{etc}]
var json = JSON.stringify(items);
Votre carte () besoin d'un .get () à la fin
et bien sûr de votre html b> p> exemple de travail b> - http://jsfiddle.net/mohammadwali/tkhmmadwali/tkhmb5/ p> J'espère que cela a aidé! p> p>
Vous pouvez simplement les pousser à un objet JSON B>, voici comment -