javascript - 通过字符串创建一个javascript对象

标签 javascript jquery asp.net devexpress

我想通过预定义名称访问用户控件,就像 DevExpress 组件一样。像这样的事情:

"<dx:MyUserControl runat="server" ID="My" ClientInstanceName="MyClient"></>"

在我的主页中,我想访问我的用户控件的客户端方法。 像这样的东西:

MyClient.DoSomething();

在我的用户控件页面中会有一个实现此方法的对象:

function myClass{
    DoSomething : function(){ var a = 2 + 2;}
}

所以,通常我会声明该对象,如下所示: var MyClient = new myClass();

但现在 MyClient 是动态的,ClientInstanceName 可以是任何内容......

那么我该怎么做呢?

也许是 JSON 或 eval?

最佳答案

你的问题有点双重含义,所以让我发布我发现的两种含义的答案。

您有一个名为 MyClient 的变量和一个名为 myClass 的类。

现在,即使我们假设这里的两个名称都是动态的,并且您获取并将这两个名称存储在变量 AB 中,这样

如果 B 等于 "foobar" ,那么你确定页面上有一个类似

的类
function foobar() { ... }

如果A等于“myFoobar”,你就知道你必须实际做一些事情

var myFoobar = new foobar();

现在,由于变量和类都是全局范围的,您可以轻松地做到

window[A] = new window[B]();

就是这样!

关于javascript - 通过字符串创建一个javascript对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25730784/

相关文章:

javascript - 将 AJAX 添加到 PHP 表单

javascript - 获取未点击的 div 的数据属性

javascript - ASPX URL 产生一个 JSON 字符串,使用 jQuery DataTable 使用

c# - ASP.NET 中的 SendAsync(异步电子邮件)和事件处理程序/生命周期?

javascript - 是什么导致它返回 NaN?

javascript - 如何通过对象构造url参数

java - 如何将图像从java小程序发送到javascript?

javascript - 如何使 CKEditor textarea 刷新/更新客户端更改?

jquery - 第一个点之前的 Highcharts 轴标签

javascript - 我可以使用 JavaScript 删除 ASP.NET 身份验证 cookie (.ASPXAUTH) 吗?