var music_arr = [
{
"id":"1",
"song":"黑色毛衣",
"singer":"周杰伦",
"special":"《专辑名称》",
"url":"D:/MusicDownLoad/Tonya Mitchell-Stay.mp3",
"lyric":
{
"type":"com",
"info":" 这里是歌词" },
"stat":"3"
}
,
{
"id":"2",
"song":"白色风车2",
"singer":"周杰伦",
"special":"《专辑名称》",
"url":"D:/MusicDownLoad/Super Junior M-Super Girl.mp3",
"lyric":
{
"type":"no",
"info":" 歌词" },
"stat":"0"
}];
这是音乐播放器页面里存放歌曲信息的 html   我这里的歌曲信息我要从后台取到,可以是Sevlet或者Struts2等等   后台给的可以是一个数组或者一个List 然后在页面里可以取到这样信息,然后另外一个页面提交请求后 这里可以再添加一首歌曲的信息
原来的那些信息要继续存在

解决方案 »

  1.   

    http://www.json.org/看看下面这个,或其他,上面有很多链接。
    http://json-lib.sourceforge.net/非常简单的,可以把你的list直接转成json格式。
      

  2.   

    var music_ar 这里的值要动态的从后台取到值
      

  3.   

    var music_ar 这里的值要动态的从后台取到值
      

  4.   

                "id":"1",
                "song":"黑色毛衣",
                "singer":"周杰伦",
                "special":"《专辑名称》",
                "url":"D:/MusicDownLoad/Tonya Mitchell-Stay.mp3",
    将以上的属性封装成Music类
    JSONObject json = new JSONObject();
    List list = this.getList???????//自己的方法获得music集合
    for(int i=0;i<list.size();i++){
       json.put(i,list.get(i));}
    HttpServletResponse response = ServletActionContext.getResponse();
    response.setCharacterEncoding("UTF-8");
    PrintWriter out = response.getWriter();
    out.println(json);
    页面
    function showit(){
              var states = $("#states"); 
                     $("#states").empty(); 
              var gp = $("#groups").val();
              
            //  alert(gp);
            
              $.ajax({ 
                type:"POST",
                data:"province="+gp+"&location=Boston",
                 url:"allpage/getAllTabstate.action",
                 
                   success:function(msg){
                   
                      var message = eval('('+msg+')');
                           states.append("<option >" +""+"</option>");
                          $.each(message, function(i,n){
                            states.append("<option value = "+music.id+">" +music.id+"</option>");
                          });
                         
                    }     
              
              });
                 
     }