我有以下用JS生成的html。
<div lang="en" id="s7_videoview_playPauseButton" class="s7playpausebutton" data-description="Scene7ComponentHolder" data-component="PlayPauseButton" state="up" selected="true"></div>
我想在点击此按钮时获取所选属性的值,我正在使用此代码:
$(document).on('click ', '.s7playpausebutton', function(e) {
e.preventDefault();
console.log($(this).attr('selected'))
$(this).val($(this).attr("selected"));
});
但它总是给我“选中”而不是实际价值即。对或错。有什么问题?
答案 0 :(得分:1)
首先,注意所选属性传统上对<div>
元素是唯一的,而不是$().attr()
元素是有用的。这会导致jquery的$(this).val($(this).attr("selected"));
方法出现问题。但是,好的旧javascript按预期工作。
替换
this.getAttribute('selected');
与
Base::doStuff
应该解决您的问题。
此处还有jsfiddle。