У меня есть компонент в Angular, содержимое которого предоставляется бэкэндом, предоставляющим HTML-код.Я добавляю его в компонент как внутренний HTML.В предоставленном HTML есть тег и.Однако, хотя я думаю, что стили соблюдаются, я не могу вызвать функцию в теге script.
Тег <script>
:
function ToggleDisplayMode(node)
{
var tableHeader = document.getElementById(node);
if (null != tableHeader)
{
var row = tableHeader.nextSibling;
while (row != null)
{
if ( row.style.display != "none" ) {
row.style.display = "none";
}
else {
row.style.display = "";
}
row = row.nextSibling;
}
}
}
Как я вызываю эту функцию:
<a onclick="ToggleDisplayMode(<args>)"><u>show/hide</u></a>
Щелчок не работает, и я получаю следующий вывод в консоли:
> Uncaught ReferenceError: ToggleDisplayMode is not defined
> at HTMLAnchorElement.onclick (<args>)
Функция четко определена, поэтому я не понимаю, что я делаю здесь неправильно.
Я проверил несколько сообщений по этой проблеме, но они основаны на JQuery.Это проблема с тем, как Angular может обрабатывать внутренний HTML?
EDIT: Клик должен обрабатываться JavaScript, а не Angular (из-за особенностей этой системы), поэтому ngClick
или (click)
не будет работать.
РЕДАКТИРОВАТЬ 2: Очевидно, <script>
теги в innerHtml
не выполняются согласно этой записи .Тогда придется найти другой способ сделать это.