JQuery AJAX响应,包括jQuery代码

时间:2014-08-01 13:16:05

标签: jquery ajax response

我有一个使用动态页面加载的应用程序。一切正常,但我需要为特定部分使用特殊的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>

1 个答案:

答案 0 :(得分:0)

在声明“点击”之前,可以使用解除绑定功能。事件。更多信息:http://api.jquery.com/unbind/