我查了一会儿却找不到我要找的答案。
我使用IScriptControl和ScriptManager从头开始创建一个新的TextBox。
在我的脚本控件中一切正常,但我想知道如何从外部触发脚本控件内的函数。
举个例子。让我说我有这个:
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"我的scriptcontrol里面的函数? 我记得你在这里看到了什么,但这不起作用我已经测试过了。
<script> function test() { $get("TestControl").doSomething(); } </script>
答案 0 :(得分:0)
k我看起来更多,并找到了我自己的解决方案。
我在这里分享,所以每个有相同问题或问题的人都可以使用它。
我不得不将$ get更改为$ find以使其正常工作。
<script> function test() { $get("TestControl").doSomething(); } </script>