2014-02-09 1 views
0

У меня есть ASP.NET MVC-сайт и плагин JPlayer, и я хочу добавить запись истории в базу данных.Как получить название текущей песни при завершенном событии в JPlayer

Когда я отправляю AJAX название текущей дорожки при завершении события, я получаю заголовок следующего трека.

Например:

Плейлист:

  • 1) Первый Song.mp3
  • 2) Во-вторых Song.mp3

Когда заканчивается первая песня, я получаю контроллер вторых song.mp3

Вид:

@Html.Raw("<script>$(document).ready(function() {"); 
@Html.Raw("var cssSelector = { jPlayer: '#jquery_jplayer_1', cssSelectorAncestor: '#jp_container_1' };"); 
@Html.Raw("var playlist = ["); 
foreach(var song in Model.Song) { 
    @Html.Raw("{ title : '" + @song.song_name + "' ," + "mp3 : '/Content/Uploads/" + @song.song_path + "'},") 
} 
@Html.Raw("];"); 
@Html.Raw("var actionUrl = '" + @Url.Action("History", "Music") + "';"); 
@Html.Raw("var options = { swfPath : '/Scripts/jplayer', supplied : 'mp3', "); 
if(HttpContext.Current.User.Identity.IsAuthenticated) { 
    @Html.Raw(" ended : function() {" + 
    "$.ajax({" + 
    "type: 'POST'," + 
    "url : actionUrl," + 
    "data : { isEnded: 'true', trackname: myPlaylist.playlist[myPlaylist.current].title, albumId : " + "\"" + @Model.album_id.ToString() + "\"}," + 
    "success: function (data) {}," + 
    "error: function (xhr, ajaxOptions, thrownError) {" + 
     "alert('Cant add to history');" + 
    "}});}"); 
} 
@Html.Raw("};"); 
@Html.Raw("var myPlaylist = new jPlayerPlaylist(cssSelector, playlist, options);"); 

Заранее спасибо :)

ответ

0

Хм, решение, лучшие решения могут быть ответом :)

@Html.Raw("var actionUrl = '" + @Url.Action("History", "Music") + "';"); 
@Html.Raw("var curTrack;"); 
@Html.Raw("var options = { swfPath : '/Scripts/jplayer', supplied : 'mp3', "); 
if(HttpContext.Current.User.Identity.IsAuthenticated) { 
    @Html.Raw(" play : function() {" + "curTrack = myPlaylist.playlist[myPlaylist.current].title;},"); 
    @Html.Raw(" ended : function() {" + 
    "$.ajax({" + 
    "type: 'POST'," + 
    "url : actionUrl," + 
    "data : { isEnded: 'true', trackname: curTrack, albumId : " + "\"" + @Model.album_id.ToString() + "\"}," + 
    "success: function (data) {}," + 
    "error: function (xhr, ajaxOptions, thrownError) {" + 
     "alert('Cant add to history');" + 
    "}});}"); 
} 

 Смежные вопросы

  • Нет связанных вопросов^_^