2012-06-12 4 views
1

Ну им пытаются написать свой собственный пользовательский контроль расширитель, но я не могу получить Javascript работатьasp.net расширитель ajaxtoolkit пользовательского управления

Здесь у вас есть пустой класс:

Imports System.ComponentModel 
Imports AjaxControlToolkit 
Imports System.Web.UI 
Imports System.Web.UI.WebControls 


<Assembly: System.Web.UI.WebResource("GuiExtensions.PrintButtonBehavior.js", "text/javascript")> 

<Designer(GetType(PrintButtonExtenderDesigner))> 
<ClientScriptResource("Sys.Extended.UI.PrintButtonExtender", "GuiExtensions.PrintButtonBehavior.js")> 
<TargetControlType(GetType(IButtonControl))> _ 
Public Class PrintButtonExtender 
    Inherits ExtenderControlBase 


End Class 

И здесь у вас есть JavaScript:

Type.registerNamespace('Sys.Extended.UI'); 
Sys.Extended.UI.PrintButtonExtender = function (element) { 
    Sys.Extended.UI.PrintButtonExtender.initializeBase(this, [element]); 
} 

Sys.Extended.UI.PrintButtonExtender.prototype = { 
    initialize: function() { 
     Sys.Extended.UI.PrintButtonExtender.callBaseMethod(this, 'initialize'); 
     var element = this.get_element(); 
     this._clickHandler = Function.createDelegate(this, this._onClick); 
     $addHandler(element, "click", this._clickHandler); 
    }, 

    dispose: function() { 

     $removeHandler(this.get_element(), "click", this._clickHandler); 
     this._clickHandler = null; 


     Sys.Extended.UI.PrintButtonExtender.callBaseMethod(this, 'dispose'); 
    }, 

    _onClick: function() { 
     alert("Test"); 
     return false; 
    } 
} 

Sys.Extended.UI.PrintButtonExtender.registerClass('Sys.Extended.UI.PrintButtonExtender', Sys.Extended.UI.BehaviorBase); 

проблема здесь состоит в том, что _onClick никогда не вызывается, когда кто-то нажимает на кнопку я назначен удлинитель .. я проверил, что «this.get_element();» возвращает правильный элемент, но мне не повезло запустить функцию _onClick.

До сих пор я взломал это вместе, посмотрев на источник из кода, но без успеха!

ответ

1

изменить тип this._onClick

this._clickHandler = Function.createDelegate (это, this._onClick);

к

this._clickHandler = Function.createDelegate (это, this._clickCallback);

надеюсь, что это будет получить результаты :)

+0

Это работало, и им совершенно запутались, вы знаете, почему «_onClick» не работает? – Peter

Смежные вопросы