0

コンテキストメニューがあり、右クリックするとメニューが表示され、ユーザーがテーブル行を右クリックするとコンテキストメニューが表示されます。

行には、現在の行のステータスがロックされているかどうかを示す列があります。行がロックされている場合、特定のコンテキスト メニュー項目を非表示にしたいので、ここではこのコードを使用していますが、右クリックが発生した行に移動する方法がわかりません。

$('.menu').contextMenu(menu1, {
            beforeShow: function () {
                var lock = $("#table tr");

                if ($("table input[name='checked']:checked").length > 1) {
                    var i = 0;
                    $(this.menu).find('.context-menu-item').each(function () {
                        i = i + 1;
                        if (i == 1 || i == 7 || i == 8) { $(this).hide(); }
                    });
                }
                else {
                    var i = 0;`enter code here`
                    $(this.menu).find('.context-menu-item').each(function () {
                        i = i + 1;
                        if (i == 1 || i == 7 || i == 8) { $(this).show(); }
                    });

複数のチェックされたアイテムの場合、特定のアイテム(コンテキストメニューに8つのアイテムがあります)の条件が満たされている場合、メニューがヒットし、html内で定義した選択された行データ属性を取得しようとしています。この右クリックが発生した行を見つける方法:

<tr class="menu page-datagrid-text" data-lock ="@item.isLocked.ToString()"> 
4

0 に答える 0