JQuery Post with PHP SQL queries


JQuery Post with PHP SQL queries

你好,所以我想知道是否有人可以帮助我。我有一个个人的TODO列表PHP项目,我可以通过按"enter"进入任务,然后任务自动添加到列表中。有一个删除这些任务的功能和2个选项卡,一个用于查看当前任务,一个用于查看已删除(或已完成)任务的存档。

一旦我实现了标签,我的删除功能就停止工作了。我假设它与view.task.php被发布的地方有关。下面是我用来显示任务/存档和删除函数的jQuery函数。

function delete_task() {
    $.get('includes/view-task.php'); 
    $('.delete-button').click( function(){
        var current_element = $(this);
        var id = $(this).attr('id');
        $.post('includes/delete-task.php', { task_id: id }, function() {
            current_element.parent().fadeOut("fast", function() { $(this).remove(); });
            alert('it worked');
        });
    });
}
function show_tasks() {
    $('.task-button').click(function(){
        var current_element = $(this);
        var id = $(this).attr('id');       
        $.post('includes/view-task.php' , function(task) {
            $(task).appendTo('.todo-list ul').hide().fadeIn(); 
        });
        $('.archive-item').fadeOut("slow", function() { $('.archive-item').remove(); });
        $('.task-button').attr('disabled','disabled');     
        $('.archive-button').attr('disabled',false);
    });
 }

这是我的视图任务php脚本:

<?php
    require("connect.php");
    $query = mysql_query("SELECT * FROM tasks ORDER BY date ASC, time ASC");
    $numrows = mysql_num_rows($query);
    if($numrows>0){
        while( $row = mysql_fetch_assoc( $query ) ){
            $task_id = $row['id'];
            $task_name = $row['task'];
            echo '<li class="task-item">
                        <span>'.$task_name.'</span>
                <img id="'.$task_id.'" class="delete-button" width="10px" src="images/close.svg" />
              </li>';
        }
    }
?>

待办事项列表目前上传到http://derekonay.com/todo,提前感谢您的帮助

我认为你的代码的问题是,它没有包装在文档准备事件。要解决这个问题,尝试这样做:

<script type="text/javascript">
$(document).ready(function()
{
    $.get('includes/view-task.php'); 
    $('.delete-button').click( function(){
        var current_element = $(this);
        var id = $(this).attr('id');
        $.post('includes/delete-task.php', { task_id: id }, function() {
            current_element.parent().fadeOut("fast", function() { $(this).remove(); });
            alert('it worked');
        });
    });
    $('.task-button').click(function(){
        var current_element = $(this);
        var id = $(this).attr('id');       
        $.post('includes/view-task.php' , function(task) {
            $(task).appendTo('.todo-list ul').hide().fadeIn(); 
        });
        $('.archive-item').fadeOut("slow", function() { $('.archive-item').remove(); });
        $('.task-button').attr('disabled','disabled');     
        $('.archive-button').attr('disabled',false);
    });
});
</script>