Я уже вижу несколько связанных с этим вопросов на SO, но я думаю, что мой вопрос достаточно отличается, чтобы не считаться дубликатом (если я ошибаюсь, дайте мне знать).
У меня есть элемент управления ActiveX, который я написал на C #, и хотя он у меня в основном работает, я хочу вызывать событие в JavaScript при его нажатии (он отображает изображение, поэтому это визуальный элемент на странице).
Конечная цель того, чего я хочу достичь, ничем не отличается от того, если бы это был тег <span>
и у него было бы событие onclick
для вызова функции JavaScript при нажатии на область тега.
Большая часть материала, которую я читал в нем очень подробно рассказывается, как обрабатывать события в элементе управления ActiveX и отправлять информацию туда и обратно, и это нормально, но кажется слишком сложным. Я не хочу связываться с элементом управления ActiveX, мне просто нужно, чтобы функция JavaScript запускалась, когда я щелкаю по ней, аналогично тегу <span>
или <div>
. Я могу справиться со всем остальным на JavaScript. Простое включение элемента управления в <span>
или <div>
с событием onclick
не имеет никакого эффекта - элемент управления ActiveX в значительной степени отменяет его.
Есть ли простой способ справиться с этим для элемента управления ActiveX, написанного на C #?
Я предполагаю, что другой способ выразить это - я работаю со сторонним элементом управления, и мы должны использовать код, похожий на следующий, чтобы заставить его взаимодействовать с нашей HTML-страницей через JavaScript.
<script type="text/javascript" event="OnMouseClick(index)" for="AXObjectName">
<!--
AXObjectName_OnMouseClick(index);
//-->
</script>
Где AXObjectName
- имя / идентификатор элемента управления, а AXObjectName_OnMouseClick
- имя функции JavaScript, которая будет запускаться в моем коде, передавая параметр index
. Однако что мне нужно сделать, чтобы настроить такой метод, как OnMouseClick
, в элементе управления? И если я не хочу передавать какую-либо актуальную информацию (т.е. не index
), нужно ли мне заходить так далеко?