2 Stimmen

ASP.NET Ajax

Ich habe ein benutzerdefiniertes Steuerelement, das den folgenden Prototyp hat.

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();

Wie kann ich ein Post-Back-Ereignis an den Server in der Methode _onBlur auslösen?

Prost

Rohan

0 Stimmen

Eine Aktualisierung des Fragentitels, um die Frage zu beschreiben (statt nur ASP.NET Ajax), würde wahrscheinlich mehr Aufrufe/Antworten bringen

5voto

AdamB Punkte 8280

Sie können dazu die Methode __doPostBack verwenden, deren Signatur lautet:

function __doPostBack(eventTarget, eventArgument)

Es wäre also etwas in der Art von:

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

Sie können auch optional ein Argument zusammen mit dem Ereignis übergeben, falls gewünscht.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X