Как предотвратить asp: меню от закрытия при нажатии - PullRequest
0 голосов
/ 02 августа 2011

У меня есть System.Web.UI.WebControls.Menu, который закрывается при нажатии на верхний уровень.

См. Скринкаст http://www.screencast.com/t/puCmErPVp

Я НЕ хочу, чтобыуволен при нажатии.Я хочу, чтобы меню оставалось недоступным.

Элементы меню заполняются картой сайта.

Есть ли что-либо в объекте Menu, которое я могу использовать, чтобы получить такое поведение?Возможно, есть какой-нибудь javascript или CSS, который я могу использовать, чтобы предотвратить его исчезновение?

Ответы [ 2 ]

0 голосов
/ 04 августа 2011

Я исправил это с помощью некоторого Javascript.

По сути, то, что происходило раньше, было document.body.onclick было установлено в Menu_HideItems.Я изменил его так, чтобы document.body.onclick вызывал мою собственную функцию и проверял, что вы нажимаете, прежде чем скрывать пункты меню.

<script type="text/javascript" language="javascript">

  function HideMenuOnClick(item) {
  var target;
     if (item.target) {
        target = item.target;
     }
     else if (item.srcElement) {
        target = item.srcElement;
     }

     if (target.className.indexOf("StaticMenuItemStyle") == -1) 
     {
        Menu_HideItems(item);
     }
     else
     {
        return false;
     }
  }

  document.body.onclick = HideMenuOnClick;
</script>
0 голосов
/ 03 августа 2011

кажется, что у вас есть сторонний компонент, используемый с asp: menu, если да, вам нужен его исходный код для изменения действия при наведении на <li>, если нет, есть некоторые javascript-скрипты на стороне клиента или стили css, вы можете их изменить

...