.net - 如何将关联数组参数从 javascript 传递到 ActiveX 对象?

标签 .net javascript com activex

我想将一个关联数组(或只是一个具有属性名称和值的对象)传递到我的 ActiveXObject。我找不到任何人成功地简单地将复杂数据从 javascript 传递到 ActiveX 对象。

我的 ActiveX 对象正在 IE 中加载,它是我的,所以我可以将方法签名和代码更改为任何有效的方法。我还可以控制 javascript 的结构。

如果没有一种简单的方法,我正在考虑对数据进行 url 编码并将其作为字符串发送。但是,如果只传递一个对象是可能的,那似乎有点傻。

ActiveX 对象是用 C# 编码的,如果这有任何区别...

最佳答案

我发现最好的方法是来回发送 JSON 字符串。这对于简单数据和复杂数据都非常简单。

要将数据从 ActiveXObject 发送到 javascript,只需使用 StringBuilder 或类似工具将数据格式化为 JSON。

要将数据从 javascript 发送到 ActiveXObject,请在 javascript 中使用 JSON 库对数据进行编码,然后在 .net 中使用 JSON 解析器,如 JSON.Net阅读它。

或者,对于不需要 JSON 解析器的真正简单的情况,您可以使用 URL 编码的字符串。

关于.net - 如何将关联数组参数从 javascript 传递到 ActiveX 对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3056770/

相关文章:

.net - 从 amazon s3 存储桶子文件夹 .Net 获取文件

c# - System.Concurrency.AsyncLock 有什么作用?

javascript - 单击 Canvas 中的线条

javascript - 在 Android 浏览器中使用 Google Maps Javascript API 双指缩放

c++ - 如何在不抽取 WM_PAINT 的情况下在 STA 中抽取 COM 消息?

c# - COM 无法正确地将 BSTR 从托管服务器编码到 native 客户端

c++ - 如何在 C++ 中创建一个简单的 COM 组件

c# - 返回列表前清除 list 的方法好吗?

c# - 将整数的视觉表示视为十六进制以放置在 guid 中

javascript - 对这个 javascript 模式感到困惑