1

实际上我已经创建了一个播放器,它使用 json 数组来制作播放列表。

我想要的是当用户选择多首歌曲并播放时,必须创建一个数组。

[ 
    {url : "song1_path",title : "Title1"}, 
    {url : "song2_path", title : "Title_2" } 
];

但我想以这样一种方式创建播放选定按钮的 id 是播放。

<tr>
    <td><input data='song_path1' 'title="title1"'  type="checkbox" class="song"></td>
    <td>song 1</td>
    <td>Babo Man</td>
    <td>Content Goes Here</td>
    </audio></td>
</tr>
<tr>
    <td><input data='song_path2' title="title 2" 'type="checkbox" class="song"></td>
    <td>song 2</td>
    <td>Rahat Fatah Ali, Hamesh</td>
    <td>Content Goes Here</td>
<tr>

我正在使用此代码

function playlistx() {
    var playlist = [];
    playlist.push({
        "url": GetDetails("url"),
    });
    return JSON.stringify(playlist);
}

function GetDetails(d) {
    var arr = new Array();
    $('.song').each(function () {
        if (this.checked) {
            if (d == "url") {
                arr.push($(this).attr('data'));
            }
        }
    });
    return arr;
}
4

1 回答 1

1

在 html 中试试这个:-

<table>
  <tr>
  <td><input data='song_path1' title="title1"  type="checkbox" class="song"></td>
  <td>song 1</td>
  <td>Babo Man</td>
  <td>Content Goes Here</td>
  </td>
  </tr>
  <tr>    
  <td><input data="song_path2" title="title_2" type="checkbox" class="song" /></td>
  <td>song 2</td>
  <td>Rahat Fatah Ali, Hamesh</td>
  <td>Content Goes Here</td>
  </tr>
 </table> 
 <input type="button" value="Add" id="createObject"/>

在 jquery 中:-

$(document).ready(function(){
$('#createObject').click(function(){
 var ar=[];
    $('.song').each(function(){
        if($(this).is(':checked'))
        {
            ar.push({url:$(this).attr('data'),title:$(this).attr('title')}); 
        }        
    });
    alert(JSON.stringify(ar));
  });
});

这是工作演示:- http://jsfiddle.net/jPwkX/2/

于 2013-10-02T11:43:46.613 回答