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