【发布时间】:2012-10-19 11:20:20
【问题描述】:
当您不知道它是id 时,如何获取动态生成元素的id 属性?我想在一个页面上为大约 2000 个复选框设置一些 eventListeners。
我知道我可以从元素中调用函数:
<input type="checkbox" id="{databaseResult.Value}" onclick="someFunction(this)" />
但我不允许在我的 HTML 中使用 JavaScript 或对它的引用。纯 JavaScript(或编译成它的语言)是我唯一的选择。
对于我确实知道id的某些元素,我已经拥有的代码是:
var tb = <HTMLInputElement>document.getElementById("tbox");
if(tb.addEventListener("", function (e) {
sayHello(tb.value);
}, false));
【问题讨论】:
-
你知道它在 DOM 中相对于你知道 ID 的元素的位置吗?
-
如果您只想选择 2000 个框来绑定事件,您可以使用
$('[type=checkbox]')来选择所有 2000 个框。参考:api.jquery.com/checkbox-selector -
将您的事件处理程序绑定到父元素并使用
event.target||event.srcElement。有了 2000 个复选框,委托事件处理肯定是一个更好的方法。 -
我知道它在 a Grid 控件中,但我不知道它在哪一个。
-
@keithxm23:是的,在理想的世界里,我可以使用 jQuery。
标签: javascript html typescript