2014-10-19 4 views
0

방금 ​​PHP 배열을 javascript로 변환했습니다. 배열의 키를 기반으로 배열에서 항목 목록이나 항목을 선택하려면 어떻게해야합니까? 'CLASS_ID'= 'BASIC2은'예를 들어, 내가 어떻게이 js_subject 배열 위의 배열배열 내의 역할 값을 기반으로 다차원 배열에서 항목을 선택

js_subject['subject_id'] = {1,2,3} 
js_subject['subject_name'] = {maths, english, biology} 
js_subject['class_id'] = {1,1,2} 

을 포함

아래 내 코드에서 var에 js_subject 배열에서이 쿼리를 적용 할 수 있습니다 SELECT 'subject_names' .. '1'의 class_id가 선택되면 {maths, english} 배열을 가져와야합니다. 어떻게 내가 자바 스크립트에 대해 갈 수 있습니까?

<script type='text/javascript'> 
function trythis() 
{ 
var js_subject = <?php echo $subjects = json_encode($this->db->get('subject')->result_array()); ?> 

} 

</script> 
+0

는 연관 배열이 http://www.w3schools.com/js/js_arrays.asp – Gavin

+0

섹션을 참조하려면 같은 소리 보인다 –

답변

0

당신은 JS 객체의 배열 만들어야합니다 이 같은 기본 목적은 같습니다

{ subject_id: 1, subject_name: 'maths', class_id: 1 } 

이러한 개체의 배열을 만듭니다

var js_subject = [{ subject_id: 1, subject_name: 'maths', class_id: 1 }, 
        { subject_id: 2, subject_name: 'english', class_id: 1 }, 
        { subject_id: 3, subject_name: 'biology', class_id: 2 }] 

이 사람들을 찾으려면을하는 수행을 반복을 위해 class_id가 엘리먼트와 매칭되는지를 물어보고 subject_name을 결과 배열로 푸시한다. 당신이 JS 객체를 찾고있는 것처럼

var subjects = []; 
for (var i=0; i<js_subject.length; i++) { 
    if(js_subject[i].class_id === 1) { 
     subjects.push(js_subject[i].subject_name); 
    } 
} 
관련 문제