尝试使用点击功能替换 html 属性
Trying to replace a html attribute using a click function
我正在尝试使用 a
元素并从 data-id
属性中获取信息并将其存储到变量中。然后我想拼接这个变量,这样我就得到了我需要的部分,并将它实现到另一个带有一些文本的变量中。然后我想用变量替换 iframe
的 src
属性。不幸的是,这似乎根本不起作用,我找不到问题所在。
代码如下:
$('.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()。
我正在尝试使用 a
元素并从 data-id
属性中获取信息并将其存储到变量中。然后我想拼接这个变量,这样我就得到了我需要的部分,并将它实现到另一个带有一些文本的变量中。然后我想用变量替换 iframe
的 src
属性。不幸的是,这似乎根本不起作用,我找不到问题所在。
代码如下:
$('.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()。