/ / зупинити налаштування події onclick для asp: LinkButton, якщо жодна подія OnClick не була визначена явно - c #, asp.net

зупинити налаштування події onclick для asp: LinkButton, якщо жодна подія OnClick не була чітко визначена - c #, asp.net

Як встановити налаштування за замовчуванням, щоб, якщо це зробитине встановити явно OnClick (тобто атрибут Asp.net OnClick) для тегу asp: LinkButton, він не відображатиме клієнтську сторону атрибута onclick (html атрибут для javascript)? За замовчуванням asp.net додає onclick = "doPostBack ...." для LinkButton.

Корпус для використання:

На сторінці є тег LinkButton. На цій сторінці, якщо у користувача є один друг, я хочу запустити код на стороні клієнта лише у випадку натискання кнопки і з будь-якої причини не хотів би зробити публікацію назад. Якщо у користувача є більше одного друга, я б хотів, щоб натиснути кнопку, щоб викликати поштовий зворотній зв'язок.

Рішення, що включають в себе наступне, не корисні:

  1. Використання будь-якого asp.net Ajaxtoolkit
  2. Динамічне перемикання типу керування (тобто якщо друзі == 1 використовують asp: гіперпосилання) -Я хочу цього уникнути, бо це не масштабується. Можливо, буває багато випадків, коли я хочу, щоб тег asp: Link робив поштовий зворотній зв'язок або не робив postbackback, залежно від контексту користувача або атрибутів користувача.

  3. Використання OnClientClick (я використовую jQuery хотів би цього уникнути)

Рішення, яке було б корисно, якщо можливо:

Якщо я можу побачити сторону сервера під час виконання, чи подія OnClick явно встановлена ​​на тезі asp: LinkButton, це також вирішило б мою проблему. якісь ідеї?

Відповіді:

0 для відповіді № 1

А як щодо динамічного перемикання елементів керування (як ви вже згадували, це рішення, якого ви не хочете) завжди скористайтеся asp:HyperLink і встановіть NavigateUrl властивість перенаправляти вашу сторінку назад до себе із рядком запиту, який вказує на те, що було натиснуто.

Якщо ви не хочете, щоб публікація взагалі сталася, просто залиште її NavigateUrl властивість порожня.

Звичайно, це буде досить марно, якщо решта сторінки буде залежати від ViewState та іншого.


0 для відповіді № 2

http://forums.asp.net/t/1129106.aspx

Це посилання пояснює, як бачити сторону сервера під час виконання, чи подія OnClick була явно встановлена ​​за допомогою відображення