我尝试使用jquery更新文本,我尝试使用.change()来解决一些函数,但没有任何作用。
<div class="btn btn-tag" data-toggle='dropdown'>
Explore
</div>
当使用jQuery函数更改此文本时(在jquery中使用.text()),它不会发出警告:
$(body).on('change','btn-tag',function() {
alert('test');
});
当它改变文字时,它应该提醒,但它不是为什么会这样?
答案 0 :(得分:2)
您不能将更改事件应用于body,div,span等,而是可以应用于输入类型,如文本,复选框等。您可以定期汇集内容以检查元素子项的更改,或者您可以使用{{1 }和DOMNodeInserted
检查是否添加或删除了元素,有关详细信息,请查看此post。
DOMNodeRemoved
请注意,$(body).on('DOMNodeInserted DOMNodeRemoved','.btn-tag', function(event) {
if (event.type == 'DOMNodeInserted') {
alert('Content added! Current content:' + '\n\n' + this.innerHTML);
} else {
alert('Content removed! Current content:' + '\n\n' + this.innerHTML);
}
});
和DOMNodeInserted
在Internet Explorer 9中的每个位置都不起作用且DOMNodeInserted事件是错误的,第一次插入节点时不会触发reference DOMNodeRemoved
}。
答案 1 :(得分:2)
Div不能change
这个事件可以申请click
:
''
.
$('body').on('click','.btn-tag',function() {
alert('test');
});
但是,如果您尝试使用某些dropdown values
更新div:
试试这个垃圾箱: http://jsbin.com/ulecom/1/edit
$('select').change(function(){
if($('.btn-tag').text() == $('select').val()){
alert('test');
}
});