2011-10-26 7 views
0

나는 여기서 바보 같은 것을 놓친다는 것을 알고있다. 누구든지 내가 뭘 잘못하고 있는지 알아?JSON 직렬화 해제 문제

http://jsfiddle.net/xZvYW/

HTML :

<div id="pageheader"> 
    <h1></h1> 
    <div></div> 
</div> 

자바 스크립트/jQuery를 :

var si = [{ 
"courseid": "1", 
"coursename": "MISY431/432", 
"coursedescription": "Project Management and MIS Projects", 
"sectionid": "1", 
"sectionname": "", 
"semesterid": "1", 
"semestername": "Fall 2011", 
"semesterstarttimestamp": "9/1/2011 12:00:00 AM", 
"phaseid": "3", 
"phasename": "Open to Students", 
"phasedescription": "Students may view accepted projects and submit project team requests"}]; 

$("#pageheader h1").html(si.semestername + " " + si.coursename + " " + si.sectionname); 
$("#pageheader div").html("Current Phase: <strong>" + si.phasename + "</strong> <em>" + si.phasedescription + "</em>"); 

console.log(si); 

는 렌더링과 같은 :

undefined undefined undefined 
Current Phase: undefined undefined 

감사합니다, - 그렉

답변

4

배열로 si을 정의했지만 해당 변수에 액세스 할 때 해당 배열을 인덱싱하지 않습니다.

si의 정의를 대괄호로 묶어서 제거해야합니다.

+0

예, 감사합니다. @ GregL – Greg

+0

No probs. 동료 그레그를 도우 려니. :-) 그리고 그러한 실수는 모두 너무 이해할 수있는 시간입니다. – GregL

1

si 변수에는 하나의 객체 ([{}])가있는 배열이 포함되어 있습니다. 올바른 구문은 si[0].semestername입니다. 그렇지 않으면 필요없는 경우 배열 래퍼를 생략 할 수 있습니다.

+0

gotcha, thanks @deceze – Greg

관련 문제