데이터를 검색하기 위해 이처럼 액세스하는 객체 내의 배열에 요소를 추가하고 싶습니다.연관 배열의 중간에서 요소 연결하기
var event_id = events_data.event_id[i]["0"];
var event_title = events_data.event_title[i]["0"];
var selected_source = events_data.selected_source[i]["0"];
var channel_id = events_data.channel_id[i]["0"];
events_data은 EVENT_ID 요소 EVENT_TITLE ... 즉, 객체가 이런 PHP 함수 생성 가진 객체이다.
$return = array();
$return['event_id'] = $event_id;
$return['event_title'] = $event_title;
$return['selected_source'] = $selected_source;
$return['channel_id'] = $channel_id;
$return['channel_name'] = $channel_name;
$return['event_site'] = $event_site;
$return['event_url'] = $event_url;
$return['start_date'] = $start_date;
$return['start_time'] = $start_time;
$return['end_date'] = $end_date;
$return['end_time'] = $end_time;
$return['event_notes'] = $event_notes;
echo json_encode($return);
편집 - ADDED 정보
는 JSON 객체는 다음과 같습니다.
{ "EVENT_ID": [{ "0": "e20120319215556"}, { "0": "e20120310221512"}, { "0": "e20120319151903"}, { "0": "e20120309123705"}, { "0": "e20120307122044"}, { "0": "e20120306182514"}, { "0": "e20120309211714"}, { "0": "e20120314130727"}, { "0": "e20120319150532"}, { "0": "e20120319141928"}, { "0": "e20120319141201"}, { "0": "e20120301193226"}, { "0": "e20120301184354은"}]}
END INFO는 추가
자바 스크립트 측면에서 나는 이와 같은 events_data 배열을 얻습니다.
$.ajax({
url: "get_events_data.php",
type: "POST",
dataType : 'json',
data: { },
cache: false,
async: false,
success: function (rdata) {
events_data = rdata;
}
});
나는 새 요소를 추가 한 다음 스플 라이스로를 추가 할 수있는 지표를 확인, 자바 스크립트 측면에 events_data에 요소를 추가합니다. 그러나 연관 배열에 대한 텍스트 키 [ "0"]를 사용하여 데이터를 검색하므로 접합 매개 변수를 지정하는 방법을 알지 못합니다.
for (var n=0; n<events_data.event_id.length; n++) {
if (current_event_id == events_data.event_id[n]["0"]) {
//splice_index = n;
events_data.event_id.splice(n,0,event_id);
events_data.event_title.splice(n,0,event_title);
events_data.selected_source.splice(n,0,selected_source);
events_data.channel_id.splice(n,0,channel_id);
events_data.channel_name.splice(n,0,channel_text);
events_data.event_site.splice(n,0,event_site);
events_data.event_url.splice(n,0,event_url);
events_data.start_date.splice(n,0,start_date_string);
events_data.start_time.splice(n,0,start_time_string);
events_data.end_date.splice(n,0,end_date_string);
events_data.end_time.splice(n,0,end_time_string);
events_data.event_notes.splice(n,0,event_notes);
break;
}
}
스플 라이스 인덱스 "n"을 지정하는 것으로는 보이지 않습니다. 무엇을 바꾸어야합니까?
감사합니다.
이 보인다. 즉, 순서가 보장되는 수치 적으로 색인 된 데이터 구조가 필요하다면 배열을 사용하십시오. 숫자 대신 문자열을 키로하는 연관 배열을 원한다면 객체를 사용하십시오. 배열을 사용하여 끝내면 push, pop 등을 사용하여 항목을 추가하고 제거 할 수 있습니다. – jbabey
이 배열은 PHP 함수에서 반환 된 json 인코딩 객체입니다. 그것은 잘 작동합니다. 나는 그것의 중간에 요소를 추가하는 방법을 알고 싶다. 이와 같이 event_title 배열을 읽으면 events_data 객체에서 var'event_title = events_data.event_title [i] [ "0"];', 요소 중간에 요소를 어떻게 추가합니까? – user823527
JSON을 표시하면 PHP를 보여주는 것보다 훨씬 도움이됩니다. – nrabinowitz