右键单击自定义菜单无法正常工作
Right click custom menu is not working properly
右键单击菜单可正确使用其功能。
但问题是有时它无法正常工作。
在我看来,如果右键单击 table 行会正确选中该复选框,但在我取消选中并尝试右键单击它再次选中后它不起作用。
$('.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;
});
我用一些代码行更改了我的代码,这对我很有帮助。
$(".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;
});
右键单击菜单可正确使用其功能。 但问题是有时它无法正常工作。 在我看来,如果右键单击 table 行会正确选中该复选框,但在我取消选中并尝试右键单击它再次选中后它不起作用。
$('.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;
});
我用一些代码行更改了我的代码,这对我很有帮助。
$(".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;
});