2013-05-05 4 views
-2

저는 jquery/javascript가 새로 도입되었습니다.배열에 세 번째 열 추가

var Tabs = { 
    'tab1' : 'string11' : 'string12', 
    'tab2' : 'string21': 'string22', 
    'tab3' : 'string31' : 'string32' 
    } 

$.each(Tabs,function(i,j,k){  
var tmp = $('<li><a class="'+k+'">'+i+'</a></li>');  
tmp.find('a').data('page',j); 
}) 

즉 : I, 그것은 불행하게도 나던 일을하려고 할 때

var Tabs = { 
    'tab1' : 'string1', 
    'tab2' : 'string2', 
    'tab3' : 'string3' 
    } 

$.each(Tabs,function(i,j){  
var tmp = $('<li><a>'+i+'</a></li>');  
tmp.find('a').data('page',j); 
}) 

내가 내 코드 이런 식으로 뭔가를 할 수 싶지만 : 나는를 추가 할 나는 아래의 코드를 세 번째 매개 변수는 Tabs 배열에 있습니다. 누군가 제발 내게 :의 역할은 무엇인지 설명해 주시겠습니까? 당신의 평소 도움이 감사합니다.

+0

모든'Tabs' 항목이되어야하고 배열 : 당신은, 그러나,이 같은 값으로 배열 (또는 다른 개체)를 사용할 수

''tab1 ': ['string11 ','string12 ']'그런 다음 반복해야합니다. – moonwave99

+0

도와 주신 moonwave99에 감사드립니다. 그것은 okey –

+0

자바 스크립트 개체 및 배열에 읽어 보시기 바랍니다. 많은 기본 정보를 찾을 수 있습니다. – charlietfl

답변

4

자바 스크립트 객체 리터럴의 일반적인 패턴은

var object = { 
    key: value, 
    key: value 
    // ... 
}; 

그래서 개체 할당이 무효입니다 : 그것은이 같은 것입니다. 또한 each()에 전달 된 콜백에는 indexvalue의 두 매개 변수 만 있습니다. 따라서 세 번째 매개 변수를 사용할 수 없습니다. 예를 들어,

var Tabs = { 
    'tab1' : ['string11', 'string12' ], 
    'tab2' : ['string21', 'string22' ], 
    'tab3' : ['string31', 'string32' ] 
    } 

$.each(Tabs,function(i,j){  
    var tmp = $('<li><a class="'+j[1]+'">'+i+'</a></li>');  
    tmp.find('a').data('page',j[0]); 
}) 
+0

완벽, Sirko가 돌아 왔습니다 –

1

키 : 문자열을 키 : 개체 쌍으로 변환 할 수 있습니다. 그런 다음 원하는만큼의 값을 가질 수 있습니다.

var Tabs = { 
    'tab1': { 
     value1: 'string1', 
     value2: 'string12' 
    }, 
    'tab2': { 
     value1: 'string2', 
     value2: 'string22' 
    }, 
    'tab3': { 
     value1: 'string3', 
     value2: 'string32' 
    } 
} 
+0

도와 주셔서 대단히 감사합니다 –

관련 문제