我有一个使用动态页面加载的应用程序。一切正常,但我需要为特定部分使用特殊的JavaScript代码。因此将这些js文件包含在标题中是无用的。所以我的回复包含一些HTML代码和js包含
我在我的应用程序部分“todo”上声明了“click”事件(切换复选框图像)的操作示例,当我打开此部分并单击已定义click事件的元素时,复选框成功切换图像。但是,当我加载另一个部分并返回到此“todo”部分时,在相同的单击切换功能运行两次之后。当我再次重复此过程时,切换功能运行三次。
有人可以帮我解决这个问题吗?
抱歉,这是我点击事件代码的示例:
$('#container').on('click','.todo-list .todo-done',function(){
var state = '';
if(currentTODO.find('.todo-done').hasClass('fa-square')) {
state = 0;
} else {
state = 1;
}
//return false;
$.post(todoUrl + 'index/toggle_active/',{'id':currentTODO.data('id'), 'state':state},function(){
if(currentTODO.find('.todo-done').hasClass('fa-check-square')) {
currentTODO.removeClass('done');
currentTODO.find('.todo-done').removeClass('fa-check-square').addClass('fa-square');
} else {
currentTODO.addClass('done');
currentTODO.find('.todo-done').removeClass('fa-square').addClass('fa-check-square');
}
});
});
还有我的回答的例子:
<div class="content">
<script src="todo.js" type="text/javascript"></script>
<div class="col-md-8">
<i class="fa fa-check-square todo-done"></i>
<div class="text">
<div class="text-text">TODO item</div>
<div class="link">
<div class="link-text"><a href="" target="_blank"></a></div>
</div>
</div>
</div>