繁体   English   中英

如何使用javascript从外部调用scriptcontrol内部的函数

[英]How to call a function inside a scriptcontrol from outside using javascript

我查找了一段时间,但找不到所需的答案。

我使用IScriptControl和ScriptManager从头开始创建一个新的TextBox。

一切在我的scriptcontrol内部都能正常工作,但是我想知道如何从外部触发scriptcontrol内部的函数。

举个例子。 可以说我有这个:

Type.registerNamespace('QuyoDevLib.Web.UI');
    QuyoDevLib.Web.UI.InputBox = function (element) {
        QuyoDevLib.Web.UI.InputBox.initializeBase(this, [element]);
        this._element = this.get_element();

    }
    QuyoDevLib.Web.UI.InputBox.prototype = {
        initialize: function () {
            QuyoDevLib.Web.UI.InputBox.callBaseMethod(this, 'initialize');

        },
        dispose: function () {

            QuyoDevLib.Web.UI.InputBox.callBaseMethod(this, 'dispose');
        },
        doSomething: function() {
        //do something usefull
        }
    }
    QuyoDevLib.Web.UI.InputBox.registerClass('QuyoDevLib.Web.UI.InputBox', Sys.UI.Control);
    if (typeof (Sys) !== 'undefined')
        Sys.Application.notifyScriptLoaded();
$create(QuyoDevLib.Web.UI.InputBox, null, null, null, $get("TestControl"))

如何使这种底层javascript能够触发脚本控件内的“ doSomething”功能? 您在这里看到的我想到的内容,但是我已经对其进行了测试,但是它不起作用。

<script>
    function test() {
       $get("TestControl").doSomething();
    }
    </script>

k我多了一点,找到了自己的解决方案。

我在这里分享它,以便每个有相同问题的人都可以使用。

我必须将$ get更改为$ find才能起作用。

<script>
        function test() {
           $get("TestControl").doSomething();
        }
        </script>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM