我在后台取的值,拼接成一个字符串str, str={id:"1",title:"100",start:"2012-12-11",end:"2013-10-10"},有一个事件events, 它的格式是这样的 events:[]  ,现在我把
str 取到的内容直接写到事件里面就有内容,我events:["+str+"] 这么传str 就没有,请问我哪里错了 ??

解决方案 »

  1.   

    events:[]这个中括号内会有什么东东?事件名?
      

  2.   

    str="{ events:["+str+"] }" 这样试试
      

  3.   


    我就是想把取到的str 放到  events:[] 中,
      

  4.   

    events:[ {id:"1",title:"100",start:"2012-12-11",end:"2013-10-10"}] 这样把取到的值直接放里面就可以,我events:["+str+"]  这样传变量就不行
      

  5.   

    首先你要表达清楚,
     str={id:"1",title:"100",start:"2012-12-11",end:"2013-10-10"}
    这个不是一个字符串,而已经是一个js对象了。events又是什么,events:["+str+"] 这个出来的应当又是什么。
      

  6.   


    拼接成一个字符串str, str={id:"1",title:"100",start:"2012-12-11",end:"2013-10-10"}
      

  7.   


    拼接成一个字符串str, str={id:"1",title:"100",start:"2012-12-11",end:"2013-10-10"}因为events 要这种格式的,所以我拼成这种了,
      

  8.   

    $.post(actionUrl,params,function(data,textStatus){
    //  alert(data);
    var json= JSON.parse(data);
    for(var i=0;i<json.length;i++){
     str+="{id:\""+json[i].teacherId+"\",title:\""+json[i].istartTime+"\",start:\""+json[i].strStartDate+"\",end:\""+json[i].strEndDate+"\"}";
    }    
    alert(str);
    var date = new Date();
    var d = date.getDate();
    var m = date.getMonth();
    var y = date.getFullYear();
    $('#calendar').fullCalendar({
    header: {
    left: 'prev,next today',
    center: 'title',
    right: 'month,agendaWeek,agendaDay'
    },
    editable: true,
    events:["+str+"]
    // {id:"1",title:"100",start:"2012-12-11",end:"2013-10-10"}
    });
    })
      

  9.   


    拼接成一个字符串str, str={id:"1",title:"100",start:"2012-12-11",end:"2013-10-10"}因为events 要这种格式的,所以我拼成这种了,还是没表达清楚,贴代码吧。
      

  10.   

    $.post(actionUrl,params,function(data,textStatus){
    //  alert(data);
    var json= JSON.parse(data);
    for(var i=0;i<json.length;i++){
     str+="{id:\""+json[i].teacherId+"\",title:\""+json[i].istartTime+"\",start:\""+json[i].strStartDate+"\",end:\""+json[i].strEndDate+"\"}";
    }    
    alert(str);
    var date = new Date();
    var d = date.getDate();
    var m = date.getMonth();
    var y = date.getFullYear();
    $('#calendar').fullCalendar({
    header: {
    left: 'prev,next today',
    center: 'title',
    right: 'month,agendaWeek,agendaDay'
    },
    editable: true,
    events:[{id:"1",title:"100",start:"2012-12-11",end:"2013-10-10"}]
    // 
    });
    })  这样可以
      

  11.   

     做的是fullCalendar  这个东西
      

  12.   


    不对,试过了
     events:[{id:"1",title:"100",start:"2012-12-11",end:"2013-10-10"}]
    这样可以。说明人家要是一个json对象不是一个字符串,你把你的字符串转成json对象events:[JSON.parse(str)]
      

  13.   

    str 那一句呢?
    不过估计events:[str] 这样就行了。
      

  14.   

    看看你 str那一句是如何定义的。
      

  15.   


          for(var i=0;i<json.length;i++){
                         str+="{id:\""+json[i].teacherId+"\",title:\""+json[i].istartTime+"\",start:\""+json[i].strStartDate+"\",end:\""+json[i].strEndDate+"\"}";
                    }  还是一个数组
      

  16.   

    直接在actionUrl中输出一个json对象数组(符合event的要求格式),post中设置请求类型为json,直接把data给event不得了。用的着这么麻烦吗
      

  17.   

    应该是个数组,http://www.cnblogs.com/yuzhongwusan/archive/2013/02/15/2912840.html 这里是个API 您帮我看下,谢谢了
      

  18.   


    因为取出来的字段和event的要求格式  不一样,所以我拼接一下
      

  19.   


    $.post(actionUrl,params,function(data,textStatus){
                        //  alert(data);
    var json= JSON.parse(data);

    /*
    for(var i=0;i<json.length;i++){
    str+="{id:\""+json[i].teacherId+"\",title:\""+json[i].istartTime+"\",start:\""+json[i].strStartDate+"\",end:\""+json[i].strEndDate+"\"}";
    } */
    //转换用这种方法。
    var vals =[];
    for(var i=0;i<json.length;i++){
    vals.push({id:json[i].teacherId , title:json[i].istartTime , start:json[i].strStartDate , end:json[i].strEndDate})
    } var date = new Date();
    var d = date.getDate();
    var m = date.getMonth();
    var y = date.getFullYear();
    $('#calendar').fullCalendar({
    header: {
    left: 'prev,next today',
    center: 'title',
    right: 'month,agendaWeek,agendaDay'
    },
    editable: true,
    events:[vals]
    // 
    });       
     })
      

  20.   

    for(var i=0;i<json.length;i++){
                         str+="{id:\""+json[i].teacherId+"\",title:\""+json[i].istartTime+"\",start:\""+json[i].strStartDate+"\",end:\""+json[i].strEndDate+"\"}";
                    } str = JSON.parse(str);低版本IE不支持JSON对象,你可以去下载json2.js引入就可以了。
      

  21.   

    楼上的可能是正确原因,不过已经使用jQuery了。直接修改
    var json= JSON.parse(data);
    改成
    var json = $.parseJSON(data);
    就好
      

  22.   

    $.post(actionUrl,params,function(data,textStatus){
                        //  alert(data);
    var json= JSON.parse(data);

    /*
    for(var i=0;i<json.length;i++){
    str+="{id:\""+json[i].teacherId+"\",title:\""+json[i].istartTime+"\",start:\""+json[i].strStartDate+"\",end:\""+json[i].strEndDate+"\"}";
    } */
    //转换用这种方法。
    var vals =[];
    for(var i=0;i<json.length;i++){
    vals.push({id:json[i].teacherId , title:json[i].istartTime , start:json[i].strStartDate , end:json[i].strEndDate});
    } var date = new Date();
    var d = date.getDate();
    var m = date.getMonth();
    var y = date.getFullYear();
    $('#calendar').fullCalendar({
    header: {
    left: 'prev,next today',
    center: 'title',
    right: 'month,agendaWeek,agendaDay'
    },
    editable: true,
    events:vals
    });       
     })
    http://arshaw.com/fullcalendar/docs/event_data/events_array/
      

  23.   

    接收的个数组,我没研究明白这个API 
      

  24.   

    都是这种格式吗?用分隔函数即可
    var s="700";
    alert(s.substring(0,1)+":"+s.substring(1,s.length));
      

  25.   

    都是这种格式吗?用分隔函数即可
    var s="700";
    alert(s.substring(0,1)+":"+s.substring(1,s.length));for(var i=0;i<json.length;i++){         vals.push({id:json[i].teacherId , title:json[i].istartTime , start:json[i].strStartDate , end:json[i].strEndDate});     }   现在我对照着发现json[i].istartTime  这里少个“” 双引号,怎么拼接一下?