Кажется, я много раз справлялся с одной и той же задачей; но в настоящее время я полностью застрял в самой простой вещи, и это вызвало раздражение
Мне нужно назначить JavaScript для кнопки ссылок ASP.Net (или гиперссылки, не имеет значения)
Что кажется проще?
Миллиард раз я делал это с таким кодом
//lbHeader.Attributes.Add("onclick",
// string.Format("ToggleSelectionPopup('{0}');return false;", panelContainer.ClientID));
Но это не работает. HTML, который я получаю, содержит javascript: __ doPostback (blahblahblah) и игнорирует функцию «onclick» моего клиента. Вместо этого, когда страница переходит на обратную передачу, когда я нажимаю кнопку (несмотря на то, что функция «onclick» правильно добавляется в «просмотр исходной страницы» HTML
Я пытался применить некоторые приемы и подходы, такие как следующие
1) заменить LinkButton на Hyperlink - эффект все тот же, страница переходит к «NavigateURL», когда я нажимаю на ссылку.
2) назначить свойство OnClientClick в декларативном макете - тот же эффект, страница в любом случае переходит на обратную передачу и игнорирует "onclick"
3) назначить "javascript: ToggleSelectionPopup (blahblahblah)" в качестве NavigateURL гиперссылки и в качестве PostBackURL ссылки link. Также не работает
Ни один из приемов не помог. Что я делаю не так, есть идеи?
Мне просто нужно избавиться от дерьмовой производительности сервера этого элемента управления, но как я могу это сделать? Конечно, я могу сделать LiteralControl с помощью «вручную», но я бы не хотел использовать такой грубый подход.
Помощь высоко ценится