【问题标题】:AJAX/JQUERY show and hide buttonAJAX/JQUERY 显示和隐藏按钮
【发布时间】:2014-02-14 08:07:13
【问题描述】:

这是我之前的帖子,感谢@Satpal 先生,我终于让按钮工作了。但现在我又有了一个错误。

这是我的目标将发生在我的网站上: 每次我点击某一行(“.emp_delete”)时,.deleteBtn 就会显示出来,点击另一行时会隐藏。

搜索后按钮不显示。有人可以帮我吗?

$(document).ready(function(){

        $('#employee_list').delegate( ".emp_delete", 'click', function() {
              var ID=$(this).attr('id'); 
              $("#delete_"+ID).show();
        });

        $('#employee_list').delegate(".deleteBtn", 'click', function(){

            var ID=$(".emp_delete").attr('id');

            if (confirm("Are you sure you want to delete?")) {
            var dataString = 'emp_id='+ID;

            $.ajax({
                type: "POST",
                url: "<?php echo site_url('c_employee/delete_employee'); ?>",
                data: dataString,
                cache: false,
                success: function(html){
                    location.reload();
                }
            });
        }
        else
            return false;

        });

        $("#searchText").keypress(function(){   //change to keypress
            var search = $("#searchText").val();
            var dataString = 'search='+search;


            $.ajax({
                url: "<?php echo site_url('c_employee/get_search'); ?>",
                type: 'POST',
                dataType: 'json', 
                data: dataString,
                cache: false,
                success: function(data){
                        console.log(data);
                        $("#employee_list").empty();

                        $.each(data, function(index, val) {

                            $("#employee_list").append('<tr class="emp_delete" id="'+val.emp_id+'"><td>'+val.emp_id+'</td><td>'+val.last_name+'</td><td>'+val.first_name+
                                '</td><td>'+val.middle_in+'</td>'+
                                '<td><input type="button" value="Resigned Employee" class="deleteBtn" id="delete_"'+val.emp_id+'"></td></tr>');
                        });

                    }
                 });

             });

    });

    $(document).mouseup(function(){
        $(".deleteBtn").hide();

    });

【问题讨论】:

  • 您的意思是当搜索结果加载或点击该行时按钮不显示?
  • 你的意思是你想在删除一行的时候隐藏删除按钮?
  • 你能提供你的代码的jsfiddle吗
  • 对于第一次阅读,我可以在前 6 行看到两个问题。当您单击一个员工时,您希望相应的“删除按钮”出现,但您也希望所有其他人都隐藏。那么,当你写var ID=$(".emp_delete") 你就错了!! $(".emp_delete) 将重新运行一个数组!所有元素对应。

标签: javascript jquery ajax codeigniter button


【解决方案1】:

这是使用 on() 的另一种方法。

$("#employee_list").on("click", "tr.emp_delete", function(){
    $(".deleteBtn").hide();
    $(this).find(".deleteBtn").show();
});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-05-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-15
    • 1970-01-01
    • 2013-01-20
    相关资源
    最近更新 更多