Добавление клиентских событий в пользовательский элемент управления ASP.Net во время выполнения - PullRequest
0 голосов
/ 06 апреля 2010

Я создаю пользовательский элемент управления ASP.net, который реализует IScriptControl. Я хотел бы, чтобы другие пользователи моего элемента управления могли назначать обработчики событий на стороне клиента этому элементу управления. К сожалению, JS, сгенерированный IScriptControl, всегда внедряется в самый конец отображаемой страницы (см. Ниже), поэтому любая попытка назначить обработчик события на странице ASPX не удалась, потому что код выполняется слишком рано.

...
<script type="text/javascript"> 
//<![CDATA[
Sys.Application.initialize();
Sys.Application.add_init(function() {
    $create(MyNamespace.MyControl, {}, null, null, $get("my_control_id"));
});
//]]>
</script>
</form>

Как правильно назначить обработчик событий для экземпляра элемента управления при загрузке страницы?

Ответы [ 2 ]

2 голосов
/ 06 апреля 2010

Проверьте это

Sys.Application.add_load(handler);
0 голосов
/ 06 апреля 2010

На самом деле, они могли бы добавить обработчик событий, используя любую из библиотек javascript, как jQuery, используя:

$(document).ready(function(){

 $('#<%= my_control_id.ClientId%>').click(function(e){
  // do something...
 });

});

НТН.

...