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 に答える