2016-09-20 43 views
6

Trình đơn nhấp chuột phải hoạt động chính xác với các chức năng của nó. Nhưng vấn đề đôi khi nó không hoạt động đúng. Theo quan điểm của tôi nếu nhấp chuột phải vào hàng của bảng, hãy chọn hộp kiểm một cách chính xác nhưng sau khi tôi bỏ chọn và thử kiểm tra lại bằng cách nhấp chuột phải vào nó không hoạt động.Trình đơn tùy chỉnh nhấp chuột phải không hoạt động đúng cách

$('.check').bind("contextmenu", function (event) { 
    event.preventDefault(); 

    $(".custom-menu").finish().toggle(100).css({ 
     top: event.pageY + "px", 
     left: event.pageX + "px" 
    }); 
}); 


$(document).bind("mousedown", function (e) { 
    if (!$(e.target).parents(".custom-menu").length > 0) { 
     $(".custom-menu").hide(100); 
    } 
}); 


$('tr.check').contextmenu(function (e) { 
    $cb = $(this).find('input[type="checkbox"].selected_check'); 
    $($cb).attr('checked', 'checked'); 
    populate_context_menu($cb); 

    return false; 
}); 
+1

Xin chào @menaka, Bạn có thể thêm liên kết jsFiddle hoặc thứ gì đó để dễ trả lời hơn không! – Ranj

+2

@ Rj_01: Xin lỗi, tôi đã không sử dụng jsFiddle hoặc khác. –

+0

ok Tôi sẽ thử. –

Trả lời

2

Tôi đã thay đổi mã của mình bằng một số dòng mã và nó giúp tôi.

$(".custom-menu li").click(function() { 

    $(".custom-menu").hide(100); 
}); 

function isExist(id) { 
    for (var i = 0; i < values.length; i++) { 
    if (values[i] == id) { 
     return true; 
    } 
} 
    return false; 
} 

$('tr.check').contextmenu(function (e) { 

    $cb = $(this).find('input[type="checkbox"].selected_check'); 
     var id = $($cb).attr('id'); 
     var result = isExist(id); 

     if (!result) { 
      $('.selected_check').attr('checked', false); 
      $('.check').removeClass('highlight_row'); 
      $('.check').addClass('td_bgcolor'); 
     } 

     $($cb).attr('checked', 'checked'); 

     populate_context_menu($cb); 

      return false; 
     }); 
Các vấn đề liên quan