Обработчик нажатия кнопки не выполняется

В веб-форме у меня есть кнопка внутри элемента управления Placeholder. Первоначально я декларативно задал событие Click в разметке:

<asp:Button runat="server" ID="btnSubmitAgain" OnClick="btnSubmitAgain_Click" CssClass="button iconButton SubmitAgainbtn" />

Однако каждый раз, когда я нажимаю эту кнопку, она обходит определенный обработчик (установленная мной точка останова никогда не срабатывает) и ведет себя как обычная кнопка submit и вызывает обратную передачу. Мой обработчик очищает переменную сеанса, а затем перенаправляет обратно на себя, поэтому не вызывает обратную передачу).

У меня есть почти идентичная версия этой формы, которая ведет себя правильно и, по сути, является идентичным кодом. Обработчик работает каждый раз в этом :-(

Как я ни старался, я не смог заставить это работать правильно. Может ли кто-нибудь предложить что-нибудь, на что я мог бы обратить внимание? Я просто не понимаю, почему событие не срабатывает через обработчик...


person indra    schedule 15.02.2011    source источник
comment
‹compilation debug=true› в файле web.config?   -  person derek    schedule 15.02.2011
comment
Ага. И отладчик найдет тот же код в почти идентичной версии этой формы.   -  person indra    schedule 15.02.2011
comment
поставьте точку останова в событии Page_Init и пройдите через него. Возможно, перед вызовом вашего обработчика кликов происходит перенаправление, или происходит исключение, и оно завершается до того, как оно попадет в обработчик.   -  person derek    schedule 15.02.2011
comment
1. Я не определил обработчик Page_Init. 2. Никаких исключений не возникает (у меня есть механизм для всего приложения для обработки/регистрации исключений)   -  person indra    schedule 15.02.2011


Ответы (1)


Это работает нормально.

<asp:PlaceHolder ID="PlaceHolder1" runat="server">
  <asp:Button runat="server" Text="resubmit" ID="btnSubmitAgain"  
    CssClass="button iconButton SubmitAgainbtn" onclick="btnSubmitAgain_Click" />  
</asp:PlaceHolder>

Обратите внимание, что я добавил к кнопке текст, чтобы ее было видно: Text="resubmit"

person Steve Wellens    schedule 15.02.2011
comment
Ваш ответ не очень помог. - person indra; 15.02.2011
comment
Он показывает рабочий код. Чем отличается нерабочий код? - person Steve Wellens; 17.02.2011