루프에서 객체를 추가 할 때 올바른 형식으로 객체를 만드는 데 문제가 있습니다.루프에서 객체 만들기
일부 목록
<ul class="pdmenu">
<ul class="pdmenu">
<li class="menu-top" id="vmen-1"><a href="#">1</a></li>
<li class="menu-item"><a href="#">aaa</a></li>
</ul>
<ul class="pdmenu">
<li class="menu-top" id="vmen-2"><a href="#">2</a></li>
<li class="menu-item"><a href="#">aaa</a></li>
<li class="menu-item"><a href="#">bbb</a></li>
</ul>
<ul class="pdmenu">
<li class="menu-top" id="vmen-3"><a href="#">3</a></li>
<li class="menu-item"><a href="#">aaa</a></li>
<li class="menu-item"><a href="#">bbb</a></li>
</ul>
내가 상위 목록 항목, .menu-top
을 통해 루프 jQuery를 사용하여 객체에 id
및 가시성을 밀어
{
"0": {
"menu":"vmen-1",
"visible":"false"
},
"length":4,
"1": {
"menu":"vmen-2",
"visible":"false"
},
"2":{
"menu":"vmen-3",
"visible":"false"
},
"3": {
"menu":"vmen-4",
"visible":"true"
}
}
등의 각 항목에 대해 구성원으로 객체를 생성
jsonmenu = $(); // Set empty object.
$('.menu-top').each(function(index) {
jsonmenu.push({
menu: $(this).attr('id'),
visible: "" + $(this).next().is(':visible') + ""
});
});
;
{
"menu":"vmen-1",
"visible":"false"
},
{
"menu":"vmen-2",
"visible":"false"
},
{
"menu":"vmen-3",
"visible":"false"
},
{
"menu":"vmen-4",
"visible":"true"
}
이 간단한 형식으로 개체를 가져 오려면 어떻게 변경해야합니까?
jsonmenu = $() 대신 jsonmenu = [] – closure
FYI는 '객체'입니다. json과 아무 관련이 없습니다. 혼란을 막기 위해 용어를 약간 수정했습니다. –
'$()'는 jQuery 인스턴스를 생성하고 직렬화하기에 절대적으로 적합하지 않습니다. 왜 그것을 사용 했습니까? – Bergi