Получить id строки с использованием jquery context menu

102
04 сентября 2019, 13:40

В приложении на asp.net mvc использую билиотеку jquery context menu. Вот мой код:

$.contextMenu({
            selector: '.context-menu',
            build: function ($trigger, e) {
                return {
                    callback: function (key, options) {
                    },
                    items: {
                    }
                };
            }
        });

Лишний код убрал.

Вот моя view:

<table class="table table-bordered">
    <thead>
        <tr>
            <th>
                @Html.ActionLink("Марка", "Index", new { sortOrder = ViewBag.MarkSort })
            </th>
            <th>Модель</th>
            <th>
                @Html.ActionLink("Цена", "Index", new { sortOrder = ViewBag.PriceSort })
            </th>
            <th>Количество на складе</th>
        </tr>
    </thead>
    <tbody class="context-menu">
        @foreach (var item in Model)
        {
            @Html.Partial("_Car", item)
        }
    </tbody>
</table>

И вот моя partialview которая вызывается для отрисовки строк в таблице:

@model AutoStore.Domain.Core.Car
<tr id="@Model.Id">
    <td>@Html.DisplayFor(item => item.Mark.MarkName)</td>
    <td>@Html.DisplayFor(item => item.CarModel.ModelName)</td>
    <td>@Html.DisplayFor(item => item.Price)</td>
    <td>@Html.DisplayFor(item => item.Count)</td>
</tr>

На partial видно что я вешаю id записи на tr(строку). Так вот. Я при вызове контекстного меню для дальнейшего редактирования хочу считать id именно той строки по которой кликнул.

Не смог найти как вытащить конкретный id конкретной строки. Но есть вариант вытащить id td'ешки по которйо кликнул, но в таком случае id'шники придётся развешивать на все тд, чего мне пока что делать не хочется, подскажите пожалуйста как можно вытащить id всей строки. PS. если что id кликнутого td вытаскивается с помощью параметра e из build. e.target.id

Answer 1
var rowId = $(e.target).closest("tr").attr("id");
READ ALSO
Не назначаются стили элементу

Не назначаются стили элементу

Всем доброго дня! Меня сейчас наверное заминусуютНо у меня нет идей, почему у меня не назначаются стили: получаю элементы через querySelectorAll:

126
Нужно записать число в переменую с сайта

Нужно записать число в переменую с сайта

На сайте есть вот такой кусок кода

115
Как отследить инициатора события submit из обработчика в javascript (на стороне клиента, без отправки формы)?

Как отследить инициатора события submit из обработчика в javascript (на стороне клиента, без отправки формы)?

В форме используются несколько кнопок отправки с разными formactionПри нажатии кнопки возникает событие submit

116
Вызов функции fetch с параметрами

Вызов функции fetch с параметрами

Есть функция в контроллере с одним входным параметром:

91