我正在尝试返回我的按钮ID:
$(document).on('click', 'button.btn.btn-primary', function() {
console.log(this.id);
});
然而,这会返回undefined
。当我尝试console.log(this)
时,我找回了一个窗口对象。我没有看到我的其他按钮的这种行为,我返回了id
..有人可以帮忙吗?
这是我的HTML:
<tr class="child">
<td class="child" colspan="8">
<li data-dtr-offset-index-"7">
<span class="dtr-title"></span>
<span class="dtr-data">
<button id="{{product_code}}" type="button" class="btn btn-primary">Add to Cart</button>
</span>
</li>
</td>
</tr>
附加背景:
我正在使用jquery数据表。当表处于响应模式时,将呈现上述html。 提前谢谢!
答案 0 :(得分:1)
您需要在onload构造中添加它,以便按钮存在
请注意,所有发布的jsfiddle示例都有默认onload
而不是in head
$(function() {
$(document).on('click', 'button.btn.btn-primary', function() {
console.log(this.id);
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<tr class="child">
<td class="child" colspan="8">
<li data-dtr-offset-index- "7">
<span class="dtr-title"></span>
<span class="dtr-data">
<button id="{{product_code}}" type="button" class="btn btn-primary">Add to Cart</button>
</span>
</li>
</td>
</tr>
答案 1 :(得分:0)
您是否尝试过jQuery解决方案?
$(document).on('click', 'button.btn.btn-primary', function() {
console.log($(this).attr('id'));
});
答案 2 :(得分:0)
https://jsfiddle.net/yt22yq8h/
$(document).on('click', 'button.btn.btn-primary', function() {
console.log(this.id);
});
这对我来说很好。参见上面的小提琴。它确实在控制台中显示了id。