Как зафиксировать событие клика на динамическом контенте в панели задач? - PullRequest
0 голосов
/ 03 февраля 2019

У меня есть некоторый код, который успешно берет текст из документа, делает с ним что-то и отображает изменения в динамических элементах div на панели задач.

Сейчас я просто пытаюсь зарегистрировать щелчок на одном из динамических элементов в журнале консоли, но я не вижу ни одного события.Но когда я останавливаюсь и перезапускаю код в VS, я вижу это в консоли ...

Элемент Подробности Clicked!undefined

Итак, что-то регистрируется.

Я читаю документы Office.js и другие сообщения в блоге, но не могу понять, что я делаю неправильно.

Я пробовал их варианты, но безрезультатно.

// dynamic div
var myDetails = 'details-S' + myId + 'I' + idxWarn;
var myDetLink = ' <div class="linkItemDetails" id="' + myDetails + '">...</div>';

function clickedItemDetails() {
console.log("Item Details Clicked! " +JSON.stringify(this));
}

$('.linkItemDetails').click(clickedItemDetails);
$('.linkItemDetails').on('click', clickedItemDetails());
$('.vtsItemDetails').bind("click", clickedItemDetails);
$('#parentDivItemCategories').on('click', '.linkItemDetails', function () { clickedItemDetails() });

Теперь, когда я останавливаю и перезапускаю код в VS, я вижу это в консоли ... Сведения об элементе Clicked!undefined

Итак, что-то регистрируется где-то.Только не тогда, когда / где / как я хочу.

Может ли кто-нибудь указать мне правильное направление?

1 Ответ

0 голосов
/ 03 февраля 2019

Игнорирование.У меня был правильный код, но с неверным идентификатором родительского div.Чувствую себя полным новичком.Но подожди!В любом случае, этот код работает, если у вас есть правильный родительский идентификатор div

$('#parentDivItemCategories').on('click', '.linkItemDetails', function () { clickedItemDetails() });
...