Я работаю над сайтом. На главной странице есть набор панелей ссылок, связанных с определенными страницами-концентраторами на сайте. Если вы посетите одну из этих страниц-концентраторов, она будет сохранена в сеансе, потому что есть определенные страницы, на которых мне нужно знать, какой страницей-концентратором вы, наконец, были. Я также хочу иметь возможность установить эту переменную сеанса из события onMouseOver из linkPanel.
По сути, когда вы наводите курсор мыши на панель ссылок, я хочу установить переменную Session для концентратора, связанного с этой панелью. Так, например, ссылку на «PageX» можно найти в «APanel» и «BPanel». Когда вы посещаете «PageX», я хочу, чтобы он загружал соответствующее подменю для «HubA» или «HubB» в зависимости от того, как пользователь туда попал.
В настоящее время я устанавливаю эту переменную Session в C# код позади. Проблема в том, что я не могу вызвать код функции непосредственно из панели OnMouseOver. Кто-то на этих форумах предложил создать скрытую кнопку asp, которая вызывает нужную функцию, и вы используете javascript, чтобы нажать эту кнопку на панели OnMouseOver. Что было хорошо, и это отличная работа.
Проблема в том, что это вызывает обратную передачу, поэтому теперь каждый раз, когда я нахожу на панели, страница обновляется, и я даже не могу нажимать какие-либо ссылки в этой панели ссылок.
Слушайте, я просто хочу установить переменную сеанса, когда пользователь наводит курсор на эту панель ссылок.
Это разметка для типа элемента linkPanel:
Это javascript, который вызывается при наведении курсора на панель:
function parHover() { document.getElementById('<%= ParButton.ClientID %>').click(); }
И это функция codeBehind, которую я хочу вызвать:
protected void ParPanel_OnMouseOver(object sender, EventArgs e)
{
Session["CurrentHub"] = "Professional";
}
Я хочу, чтобы эта функция выше выполнялась когда пользователь наводит курсор на панель ссылок, и мне нужно, чтобы не было обратной передачи.
Я не уверен, какой метод использовать. Каждый метод, который я попробовал, либо полностью потерпел неудачу, либо вызывает обратную передачу, которая ломает страницу.