2010-01-09 2 views
1

Хах ребят,пролет тег OnClick для вызова кода за методом

Как сделать поверочный тег ведет себя точно как жерех: кнопка (т.е.), используя его метод OnClick для вызова метода CodeBehind ..

<span onclick="MyPageMethod()"></span> 

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

ответ

4

Имея пролет тег быть интерактивным, как правило, очень плохая идея. Это плохо для пользовательского интерфейса, и это плохо для доступности, потому что это не то, чего ожидал пользователь. Вы должны использовать привязные теги и кнопки, если они доступны.

Но ответ на ваш вопрос: Да, это возможно сделать что-то как это! Вам просто нужно подражать тому, что делает элемент управления LinkButton.

Чтобы получить код JavaScript, который делает постбэк ASP.NET вам нужно позвонить:

Page.ClientScript.GetPostBackEventReference() 

Больше информации на MSDN.

Затем вам нужно написать код на странице, которая обрабатывает обратную передачу и называет MyPageMethod().

+0

Я динамически создавал тэг span и назначал его onclick, используя span.onClick =, который вообще не работал, т. Е. Изменил createElement, чтобы создать img, а теперь он работает .. Спасибо! –