问题标签 [iscriptcontrol]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
4195 浏览

asp.net - 为什么我不能在 jQuery 函数中使用 $find?

我正在使用 jQuery 和 IScriptControls 的组合,我似乎无法在任何 jQuery 函数中使用 $find。

以下面为例,我可以使用$get 和$,但是我不能使用$find。

当我的页面加载时,我需要调用一个方法,该方法需要从我的 MainNavigation Tab 控件中获取选定的选项卡(这是一个 Infragistics UltraWebTab,但我已经使用我自己的 IScriptControls 进行了测试,以确保这不是 Infragistics 问题)。

只能使用 $find 获取选项卡索引。我不能使用 $find 的原因是什么?如何以 $find 的方式获得控制权?

以上是我正在尝试做的事情,其中​​ ToolBarShowGroup 调用一个 jQuery 函数来显示和隐藏工具栏。

另外,虽然我听到了,但如果有人可以纠正我关于 IScript 控件的术语......他们是“Ajax 控件”还是“扩展器控件”还是什么?我已经看到它们被称为所有不同的东西。控件具有 ol' MyCompany.MyControl.prototype 声明。

编辑:以下工作完美,但我宁愿它在 $(document).ready 函数内。

0 投票
1 回答
930 浏览

c# - 没有调用 GetScriptReferences

我编写了一个自定义控件,其中包含以下内容:

有谁知道为什么不应该调用 GetScriptDescriptors 或 GetScriptReferences 的原因?控制的其他部分工作得很好。

0 投票
2 回答
1236 浏览

asp.net - 通过 IScriptControl 将复杂对象传递给 javascript

我正在使用一个 asp.net 页面,该页面使用 IScriptControl 接口将数据从代码隐藏传递到浏览器上运行的自定义 javascript 对象。

我通过 IScriptControl.GetScriptDescriptors() 传递了许多属性,它们都工作正常,除了一个。

那是一个派生自 System.Collections.Generic.Dictionary<> 的类。甚至那个一直为我工作,只要集合中的元素是标量 - 整数、双精度数和字符串。但是当我试图传递一个类的成员时,它在 javascript 中显示为一个空对象。有问题的类被标记为 [Serializable]。我将其更改为结构,并获得了相同的行为。

看起来 IScriptControl 中使用的序列化程序执行了浅拷贝。我需要一个深拷贝。

有任何想法吗?

0 投票
1 回答
280 浏览

asp.net - Web.UI.Page 的 IScriptControl 等效于什么?

我们一直在使用 IScriptControl 将 javascript 对象绑定到我们的 UserControls 和 ServerControls,并且效果很好。

问题是 ASP.NET 似乎没有提供将 javascript 对象绑定到页面的方法。到目前为止,我们一直将普通函数放在全局命名空间中,但我对这种做法产生了严重的过敏。

将我们的函数包装到 javascript 类中并在页面上包含 javascript 文件很容易,但是如何实例化对象,如何从回调事件中引用它,以及如何从代码中将数据传递给它-后面,我还没想通。

或者更确切地说,到目前为止我们一直在使用的方法(隐藏字段、发出的 javascript 字符串等)真的让我很烦。

有人有更好的想法吗?

0 投票
1 回答
125 浏览

c# - 为什么无法调试 IscriptControl javascript 代码?

我使用 Visual Studio 2008。当我在代码上设置断点时,它们不会中断。所以我唯一能做的就是使用firefox和firebug“手动”调试。

有没有办法用 Visual Studio 进行调试?

0 投票
0 回答
282 浏览

javascript - 如何在 jscript 中附加 COM 事件(不是 activex)?

EXE通过IScriptControlPtr调用jscript,喜欢

obj.dec = myobject_dec

但 jscript 无法附加 COM 事件,抛出“对象不支持此属性或方法”消息

以下 jscript 的代码:

以下com代码:

以下实现代码

以下exe代码:

如何在 jscript 中附加 IScript::dec 事件???

0 投票
2 回答
2154 浏览

javascript - Windows Server 2008 上的 MSScriptControl 问题

因此,我正在使用 MSScriptControl 在我的应用程序中运行一些 javascript,并且我希望能够获取有关脚本可能导致的任何错误的一些信息。

该代码在我的开发机器上运行良好,一个 Windows 7 机器,并给了我一个错误的行号。所以我很高兴地将它发布并推送到生产机器上,它总是告诉我错误发生在第 0 行并且没有提供描述。

我尝试去http://www.microsoft.com/download/en/details.aspx?id=1949下载最新版本,但安装它没有效果。我还将属性 Embed Interop Types 设置为 false,并将我自己的 msscript.ocx 文件复制到 Windows 2008 服务器的 system32 目录中,但这些尝试都没有解决任何问题。

有人有什么建议吗?

0 投票
1 回答
532 浏览

autocompleteextender - 为动态 AutoCompleteExtender 注册 OnClientItemSelected

我创建了一个包含 AjaxControlToolkit 的 AutoCompleteExtender 的 UserControl。当我在同一页面上有一个或多个静态设计的实例时,它工作得很好。但是,如果动态添加这些控件之一(例如,在 UpdatePanel 中),则该控件的<script>块(我目前已嵌入源视图中)似乎不可用(JavaScript 抱怨它找不到我连接到 OnClientItemSelected 的功能)。

我怀疑我需要在其 PreRender 事件中注册 UserControl 的脚本,因此即使将其动态添加到页面中,它们也可用。我正在使用 ToolkitScriptManager,并想象我需要ScriptManager.RegisterScriptControl(this);从我的控件中调用,然后实现 IScriptControl 接口。

这是正确的方法吗?如果是这样,要正确实现 IScriptControl,我是否必须将脚本块移出源视图并移到其自己的 .js 文件中?这将迫使我重新设计我的 JS 函数,因为它调用内联代码来检索该特定实例中子控件的 ClientID:

var hiddenField = $get('<%=this.hfItemID.ClientID%>');

脚本管理和 JS 不是我的专长,所以我想确保这是正确的方向,然后我才开始以编程方式添加它们之前运行良好的 UserControl 复杂化。

更新

我已将 javascript 移到后面的代码中,并将其注册为 ClientScript,希望它能让我更接近我需要的位置:

这适用于静态放置的控件,但和以前一样,不适用于动态添加的控件。该脚本只是没有进入源视图。