Як встановити налаштування за замовчуванням, щоб, якщо це зробитине встановити явно OnClick (тобто атрибут Asp.net OnClick) для тегу asp: LinkButton, він не відображатиме клієнтську сторону атрибута onclick (html атрибут для javascript)? За замовчуванням asp.net додає onclick = "doPostBack ...." для LinkButton.
Корпус для використання:
На сторінці є тег LinkButton. На цій сторінці, якщо у користувача є один друг, я хочу запустити код на стороні клієнта лише у випадку натискання кнопки і з будь-якої причини не хотів би зробити публікацію назад. Якщо у користувача є більше одного друга, я б хотів, щоб натиснути кнопку, щоб викликати поштовий зворотній зв'язок.
Рішення, що включають в себе наступне, не корисні:
- Використання будь-якого asp.net Ajaxtoolkit
Динамічне перемикання типу керування (тобто якщо друзі == 1 використовують asp: гіперпосилання) -Я хочу цього уникнути, бо це не масштабується. Можливо, буває багато випадків, коли я хочу, щоб тег asp: Link робив поштовий зворотній зв'язок або не робив postbackback, залежно від контексту користувача або атрибутів користувача.
Використання OnClientClick (я використовую jQuery хотів би цього уникнути)
Рішення, яке було б корисно, якщо можливо:
Якщо я можу побачити сторону сервера під час виконання, чи подія OnClick явно встановлена на тезі asp: LinkButton, це також вирішило б мою проблему. якісь ідеї?
Відповіді:
0 для відповіді № 1А як щодо динамічного перемикання елементів керування (як ви вже згадували, це рішення, якого ви не хочете) завжди скористайтеся asp:HyperLink
і встановіть NavigateUrl
властивість перенаправляти вашу сторінку назад до себе із рядком запиту, який вказує на те, що було натиснуто.
Якщо ви не хочете, щоб публікація взагалі сталася, просто залиште її NavigateUrl
властивість порожня.
Звичайно, це буде досить марно, якщо решта сторінки буде залежати від ViewState та іншого.
0 для відповіді № 2
http://forums.asp.net/t/1129106.aspx
Це посилання пояснює, як бачити сторону сервера під час виконання, чи подія OnClick була явно встановлена за допомогою відображення