尝试使用点击功能替换 html 属性

Trying to replace a html attribute using a click function

我正在尝试使用 a 元素并从 data-id 属性中获取信息并将其存储到变量中。然后我想拼接这个变量,这样我就得到了我需要的部分,并将它实现到另一个带有一些文本的变量中。然后我想用变量替换 iframesrc 属性。不幸的是,这似乎根本不起作用,我找不到问题所在。

代码如下:

$('.watchvideo').click(function(){
    var idu = $(this).attr('data-id');
    var id = "//www.youtube.com/embed/"idu.substr(27,37);

    $('.videofeatem').setAttribute("src", id);

});

没有看到 HTML,很难确定,但是 + 解决了明显的问题:

$('.watchvideo').click(function(){
    var idu = $(this).data('id');
    var id = "//www.youtube.com/embed/" + idu.substr(27,37);

    $('.videofeatem').attr("src", id);
 });

另外,请注意 data-xxx 属性可以被 jQuery 读取为 .data('xxx')

简单。

var id = "//www.youtube.com/embed/" + idu.substr(27,37);

您的代码有 2 个问题:

1) 连接子字符串

2) 通过jquery

设置属性
var id = "//www.youtube.com/embed/"+idu.substr(27,37);
$('.videofeatem').attr("src", id);

由于您使用的是 jQuery,请使用 .attr() 方法而不是 .setAttribute()。