如何从数组中获取不同的值?

时间:2015-06-15 08:24:04

标签: javascript php json codeigniter

我将一些编码数据发送到数组并尝试检索它们。我正在使用以下代码

var holiday_list =<?php echo json_encode($calendar_results); ?>;

        var events = []; //The events array

        $.each(holiday_list, function(key, value) {
            events.push({
                title: value.type, //get the type(am or pm)
                start: value.date_cal, //date of the calendar
                // className: "fc-event-skin22"

            });

有两种类型。上午和下午。我希望将所有结果转换为一个变量,将所有pm结果转换为一个变量。如果有人知道该怎么做,请给我一个想法。我正在使用php codeigniter框架。提前谢谢。

3 个答案:

答案 0 :(得分:1)

你只需要一个&#34; if-else&#34;。希望它能奏效。

        var amEvents = []; //The events array
        var  pmEvents = [];
        $.each(holiday_list, function(key, value) {
           if( value.type == 'am'){
               amEvents.push({
                title: value.type, //get the type(am or pm)
                start: value.date_cal, //date of the calendar
                // className: "fc-event-skin22"

               });

            }
            else{
                pmEvents.push({
                title: value.type, //get the type(am or pm)
                start: value.date_cal, //date of the calendar
                // className: "fc-event-skin22"

               });

             }
});

答案 1 :(得分:0)

希望这会对你有所帮助

var result;
for( var i = 0, len = holiday_list.length; i < len; i++ ) {
    if( holiday_list[i][title] == 'am' ) {
        result_am[] = holiday_list[i]['start']; 
    }
    else {
        result_pm[] = holiday_list[i]['start']; 
    }        
 }

答案 2 :(得分:0)

您可以将数组设置为对象的属性,然后根据类型分配它们:

var amTypes = [];
var pmTypes = [];
var types = {am:amTypes, pm:pmTypes};

$.each(holiday_list, function(key, value) {
  types[value.type].push({
    title: value.type,
    start: value.date_cal
  });
});    

amTypes types.am 引用相同的数组,如 pmTypes types.pm 。< / p>

未经测试,因为您还没有提供样本数据。