c# - 如何声明和使用来自 json 对象的函数名?

标签 c# asp.net javascript json google-maps

我有一个在服务器中构建的地理位置的 json 对象集合。这些对象中的每一个都有两个属性:“marker”和“onClick”。

Marker 用于存储 Google map 标记对象,onClick 存储在 map 上单击该标记时要调用的函数的名称。

当我在客户端使用 javascript 将位置对象推送到数组中时,我创建了标记并将它们分配给数组中的每个位置对象。

我的问题是,当我将标记与 onClick 属性绑定(bind)时,该函数不会在 DOM 中找到并出现错误。

有没有办法在 json 对象中声明一个属性,以便在事件绑定(bind)中使用它?

希望我能解释清楚,如果没有,请告诉我。

谢谢!

最佳答案

如果您在全局对象中声明了一个函数,例如

function foobar() { alert('foobar') }

然后你可以通过下标符号获取对它的引用:

var funcname = 'foobar';
var func = window[funcname];
func();   // alerts

如果函数是某个其他对象的一部分,只需使用名称作为该对象的下标:

var func = some_obj[funcname];

关于c# - 如何声明和使用来自 json 对象的函数名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2677394/

相关文章:

ASP.Net FormsAuthentication Redirect 丢失 Redirect 和 Application_AuthenticateRequest 之间的 cookie

javascript - 如何通过 JavaScript 操作 CSS @keyframes?

javascript - 带缓动的视差滚动

c# - 执行 EF Core 迁移(SmartEnum)时“找不到适合实体类型的构造函数”

c# - 通过操作/命令在数据上下文中设置属性

c# - LINQ to Entities 中的 SQL 排名

c# - 使用 Json.net 仅将接口(interface)属性序列化为 JSON

asp.net - iOS 8/Safari 8无法与ASP.NET AJAX扩展一起使用

asp.net - 如何绑定(bind) DropDownList 的选定值

javascript - 每个父级的 div 都应该有自己的背景。图像的路径在里面。怎么做?