我正在尝试在此选择中使用.change()
,但我遇到了麻烦。我似乎无法让它发挥作用。
<div class='btn-group twoColumn js-filter'>
<button class='btn btn-info disabled'>Category</button>
<a class='btn dropdown-toggle' data-toggle='dropdown' href='#' id='test'>
<span class='btn_selected_value data-point-category'>
All
</span>
<span class='caret'></span>
</a>
<ul class='dropdown-menu'>
<li class='selectAll'>
<a class='filter' data-filter='#filterCategoryId' data-value='All' href='#'>All</a>
</li>
<li>
<a class='filter' data-filter='#filterCategoryId' data-value='test333' href='#'>test333</a>
</li>
</ul>
</div>
此console.log
未被解雇:
$('.data-point-category').on('change', function() {
console.log("what")
});
我应该在哪里放置.data-point-cateogry
类,以便通过jQuery使用它?
答案 0 :(得分:1)
change
事件不会在HTML更改时触发。
更改事件在其值更改时发送到元素。这个 事件仅限于
<input>
元素,<textarea>
框和<select>
元素。对于选择框,复选框和单选按钮,事件 当用户使用鼠标进行选择时立即触发, 但对于其他元素类型,事件将延迟到 元素失去焦点。
相反,您需要以下内容:
$('.filter').on('click', function() {
console.log("what")
});
每次单击下拉选项时,这都会执行您想要的操作,这实际上与更改值相同。