ASP.NET Ajax - PullRequest
       21

ASP.NET Ajax

2 голосов
/ 18 ноября 2008

У меня есть пользовательский элемент управления со следующим прототипом.

Type.registerNamespace('Demo');

Demo.CustomTextBox = function(element) {
    Demo.CustomTextBox.initializeBase(this, [element]);
}

Demo.CustomTextBox.prototype = {

    initialize: function() {
    Demo.CustomTextBox.callBaseMethod(this, 'initialize');

        this._onblurHandler = Function.createDelegate(this, this._onBlur);

        $addHandlers(this.get_element(),
                     {
                         'blur': this._onBlur
                     },
                     this);
    },

    dispose: function() {
        $clearHandlers(this.get_element());

        Demo.CustomTextBox.callBaseMethod(this, 'dispose');
    },

    _onBlur: function(e) {
        if (this.get_element() && !this.get_element().disabled) {
            alert(this.get_element().value);
        }
    }
}

Demo.CustomTextBox.registerClass('Demo.CustomTextBox', Sys.UI.Control);

if (typeof (Sys) !== 'undefined') Sys.Application.notifyScriptLoaded();

Как я могу поднять событие обратной отправки на сервер в методе _onBlur?

Приветствия

Rohan

1 Ответ

5 голосов
/ 19 ноября 2008

Для этого можно использовать метод __doPostBack, который имеет подпись:

function __doPostBack(eventTarget, eventArgument)

Так что это будет что-то вроде:

__doPostBack(this.get_element().id, 0);

Или, при желании, вы можете передать аргумент вместе с событием.

...