动态创建一个函数,在其中注入局部变量值
Create a function on the fly injecting local var values inside
我需要动态地编写函数,同时避免使用全局变量。它们将被"连接"到事件监听器。
我现在有一个创建连接的函数。他们收到:
- 要连接的对象
- 两个变量:IDX和id我必须确定一些我想使用的元素。
这是我到目前为止的代码:
create_fun = function (obj, IDX,id) {
var f = function () {document.getElementById(IDX+"_"+id).display = "block";}
obj.addEventListener('click', f,false);
}
这段代码运行正常。我在Chrome事件监听器面板中看到连接到我想要的对象的点击事件。
问题: IDX和id是变量,因为它们不是全局变量,所以它们是未定义的。
在chrome Eventlistener检查我看到:
handler = function ()
{. getelementbyid (IDX +"_"+ id)。但是,由于IDX =" sec1"和id="3",我希望看到:
handler = function ()
{. getelementbyid("sec1 +"_"+"3")。这可能吗?我该怎么做呢?
修复由Function构造函数
给出var f = new Function ( "document.getElementById('"+IDX+"_"+id+"').style.display = 'block';" );
obj.addEventListener('click', f,false);
}
相关文章:
- 使用jQuery动态添加表并在其中动态添加行
- Javascript未在其中一个变量上输出0
- javascript在其中设置空格时会中断
- 我想在 javascript 中调用一个 php 函数,并在其中传递两个数组作为参数
- 我可以在不注入控制器的情况下在 Angular 中使用全局常量吗?
- 如何将此转盘调整为仅当用户将鼠标悬停在其中一个框上时暂停
- 如何加载一个html页面并在其中只需单击一次即可运行函数
- 多个输入,用户只能在其中一个输入中输入
- 删除超链接将内容保留在其中
- 2个不同的控制器:在其中一个控制器的动作上隐藏元素
- 如果我在其中使用alert,Javascript代码就可以工作,否则它'It’不起作用
- 我如何在AJAX中循环数据并在其中存储特定值's各自的tr td
- 有没有什么干净的方法可以对一组||测试进行编码,看看变量的值是否在其中一个测试中
- 使用“$filter”后选择当前数组项,查看它是否在其中
- jQuery:如何创建一个菜单和子菜单,每次单击时类都会在其中切换
- Javascript 使用 For 循环创建动态表,其中包含要在其中显示的数组
- 获取两个 UI 滑块在其中一个更改时将值传递给 Ajax
- 添加事件处理程序以获取按钮单击LeadPage,我可以在其中对正文进行编码
- 节点.js读取 txt 文件,同时 c 在其中写入
- 动态创建一个函数,在其中注入局部变量值