Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将字符串对象作为onclick函数中的第二个参数传递_Javascript_Jquery_Soundcloud - Fatal编程技术网

Javascript 将字符串对象作为onclick函数中的第二个参数传递

Javascript 将字符串对象作为onclick函数中的第二个参数传递,javascript,jquery,soundcloud,Javascript,Jquery,Soundcloud,我知道我在赛道上引用的话有点不对劲,但看在上帝的份上,我想不出来。请帮忙!!问题在于通过track.title。其他一切(track.id、track.artwork\u url)都可以正常工作。可能是字符串连接问题??我要做的是传递track.ID,这样我就可以播放该曲目,传递track.title,这样我就可以显示正在播放的曲目的名称。因此,参数为playerPlayNewClick(trackid,trackname) $(“#结果_容器”)。追加( ""+ " "); 错误似乎在这一行

我知道我在赛道上引用的话有点不对劲,但看在上帝的份上,我想不出来。请帮忙!!问题在于通过track.title。其他一切(track.id、track.artwork\u url)都可以正常工作。可能是字符串连接问题??我要做的是传递track.ID,这样我就可以播放该曲目,传递track.title,这样我就可以显示正在播放的曲目的名称。因此,参数为playerPlayNewClick(trackid,trackname)

$(“#结果_容器”)。追加(
""+
"  ");

错误似乎在这一行;通过突出显示语法,您可以看出
track.title有问题:

"' onClick='playerPlayNewClick("+track.id + "," \''+track.title + '\' +  ")'>" +
但是,我建议您使用DOM而不是字符串来构建元素;它不容易出错,而且jQuery使它变得简单:

var $div = $('<div>', {
  id: 'result-'+ index
});

var $a = $('<a>', {
  href: '#',
  class: 'play',
  id: index,
  click: function() {
    playerPlayNewClick(track.id, track.title)
  }
});

var $img = $('<img>', {
  class: 'albumartwork',
  id: 'artwork-'+ index,
  src: track.artwork_url
});

$('#result_container').append(
  $div.append(
    $a.append(
      $img
    )
  )
);
var$div=$(“”{
id:'结果-'+索引
});
变量$a=$(''{
href:“#”,
班级:'玩',
id:索引,
单击:函数(){
playerPlayNewClick(track.id,track.title)
}
});

var$img=$('我对引号做了一些更改。我知道您有一个track变量,希望传递track.title的值,就像传递track.id一样

$("#result_container").append(
        "<div id='result-"+index+"'>"+
          " <a href='#' class='play' id='"+index+
          "' onClick='playerPlayNewClick("+track.id + ", \'"+track.title + "\')'>" +
          "<img class = 'albumartwork' id='artwork-" + index + "' src=" + track.artwork_url + "></a> ");
$(“#结果_容器”)。追加(
""+
"  ");

试试这个……注意双“环绕track.title”和“环绕track.artwork\u url”

double“处理任何带有一个”的标题

$("#result_container").append(
        "<div id='result-"+index+"'>"+
          " <a href='#' class='play' id='"+index+
          "' onClick='playerPlayNewClick("+ track.id + ", """ + track.title + """)'>" +
          "<img class = 'albumartwork' id='artwork-" + index + "' src='" + track.artwork_url +    "'></a> ");
$(“#结果_容器”)。追加(
""+
"  ");

用DOM而不是字符串构建元素;它不太容易出错。track.title中有引号吗?@elclars但这不是“jQuery方式”!!这部分
,“\'
看起来非常错误。你希望
,“
后面跟着
\'
怎么办?
'\'+>”
也很奇怪。@NG可能不在其中,但可能需要在其周围加引号。;-)
$("#result_container").append(
        "<div id='result-"+index+"'>"+
          " <a href='#' class='play' id='"+index+
          "' onClick='playerPlayNewClick("+ track.id + ", """ + track.title + """)'>" +
          "<img class = 'albumartwork' id='artwork-" + index + "' src='" + track.artwork_url +    "'></a> ");