2012-07-17 19 views
6

Tôi có một jqgrid đã bật nhiều tùy chọn. Nhưng tôi không muốn kiểm tra hộp kiểm khi tôi nhấp vào hàng.JqGrid - Ngăn sự kiện kiểm tra hộp kiểm trên nhấp chuột vào hàng và giữ cho hàng nổi bật được bật

Sử dụng đoạn mã

$("#yourGrid").jqGrid("setGridParam", { 
    beforeSelectRow: function(rowId, e) { 
     return $(e.target).is("input:checkbox"); 
    } 
}); 

từ this post tôi đã có thể kiềm chế không chọn hộp kiểm nhưng bây giờ tôi không thể làm nổi bật một hàng cụ thể. Làm thế nào tôi có thể kích hoạt tính năng tô sáng của một hàng giữ multiselect trên nhấp chuột hàng bị vô hiệu hóa.

Trả lời

3

Có thuộc tính trên lưới nên thực hiện việc này cho bạn, theo số API.

multiboxonly 

Tùy chọn này chỉ hoạt động khi tùy chọn multiselect được thiết lập là true. Khi đa chọn được đặt thành true, hãy nhấp vào bất kỳ vị trí nào trên hàng chọn hàng đó; khi multiboxonly cũng được đặt thành true, đa lựa chọn là chỉ được thực hiện khi hộp kiểm được nhấp (kiểu Yahoo). Nhấp vào bất kỳ hàng nào trong số hàng khác (giả sử hộp kiểm không được nhấp) bỏ chọn tất cả các hàng và chọn hàng hiện tại.

Với điều này bạn không cần beforeSelectRow chức năng của bạn:

jQuery("#grid").jqGrid({ 
    . . . 
    multiselect: true, 
    multiboxonly: true 
    . . . 
}); 
Các vấn đề liên quan