【问题标题】:ASP.NET AjaxASP.NET 阿贾克斯
【发布时间】:2008-11-18 20:36:06
【问题描述】:

我有一个具有以下原型的自定义控件。

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 方法中向服务器发起回发事件?

干杯

罗汉

【问题讨论】:

  • 更新问题标题以描述问题(而不仅仅是 ASP.NET Ajax)可能会收集更多视图/答案

标签: javascript asp.net-ajax


【解决方案1】:

您可以使用 __doPostBack 方法来执行此操作,该方法的签名为:

function __doPostBack(eventTarget, eventArgument)

所以应该是这样的:

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

或者,如果需要,您可以选择将参数与事件一起传递。

【讨论】:

    猜你喜欢
    • 2010-10-11
    • 1970-01-01
    • 2018-05-15
    • 2018-07-04
    • 1970-01-01
    • 2023-03-21
    • 2015-01-13
    • 2014-07-01
    • 1970-01-01
    相关资源
    最近更新 更多