【发布时间】:2014-09-05 09:38:33
【问题描述】:
我有一个使用纯 JavaScript(无 JQuery)的网站,我想在文本框中捕获事件。 文本框在一个表格中,页面上可能有多个表格(具有自己的 ID)。 文本框由 Javascript 动态创建,并在 HTML 表格传送到浏览器后添加到表格中。
我正在尝试捕获 onkeyup 事件,并且知道包含触发该事件的文本框的表。
附加到 onkeyup 事件的函数被调用一个参数,即事件本身,它提供有关刚刚按下的键的信息。太好了,我能搞定,而且我知道关键,一切都好。
textbox.onkeyup = my.namespace.textboxAge;
my.namespace.textboxAge = function (event) {
console.log("I got the event:" + event.ToString()); };
我需要做的是在函数调用中附加附加信息,以便我获得原始事件以及表或表 ID。
当我将处理程序附加到 onkeyup 事件时,我考虑过一个闭包以捕获表引用,类似于...
var table = document.getElementByID("table5");
textbox.onkeyup = function (event,table) {
console.log("I got event:" + event.ToString() + " on table " + table.id); }
但这不起作用,附加闭包函数时未设置事件,因此在 onkeyup 触发时它仍然为空。
我现在已经解决了这个问题,但我对如何向事件添加信息感到困惑,并且想知道是否可能以及如何做到这一点。
【问题讨论】:
标签: javascript events arguments onkeyup