javaScript:将参数传递给 eventListener
javaScript:passing argument to eventListener
我正在尝试制作一些东西,我制作了这段代码,但是当我按下 botton 时,它发生了一秒钟然后消失了,我是否传递了错误的参数还是什么?这里的代码是:
{
var fil1;
var rtextDiv;
for (var i = 0; i < dmsg.getElementsByClassName('refilter').length; i++) {
var refilterInput = dmsg.getElementsByClassName('refilter')[i];
refilterInput.addEventListener('keyup', firstfilter(rtextDiv, fil1,refilterInput));
}
};
function firstfilter(e, rtextDiv, fil1, refilterInput) {
rtextDiv = refilterInput.parentNode.parentNode.getElementsByClassName('rtext')[0];
while (rtextDiv.firstChild) {
rtextDiv.removeChild(rtextDiv.firstChild);
}
fil1 = filteredPropertiesTable(res, refilterInput.value);
rtextDiv.appendChild(fil1);
};
编辑如评论所说:
{
var fil1;
var rtextDiv;
for (var i = 0; i < dmsg.getElementsByClassName('refilter').length; i++) {
var refilterInput = dmsg.getElementsByClassName('refilter')[i];
refilterInput.addEventListener('keyup', function()
{firstfilter(rtextDiv,fil1,refilterInput)(rtextDiv, fil1,refilterInput)});
);
}
};
function firstfilter(e, rtextDiv, fil1, refilterInput) {
rtextDiv = refilterInput.parentNode.parentNode.getElementsByClassName('rtext')[0];
while (rtextDiv.firstChild) {
rtextDiv.removeChild(rtextDiv.firstChild);
}
fil1 = filteredPropertiesTable(res, refilterInput.value);
rtextDiv.appendChild(fil1);
};
是真的知道吗?我可以这样传递论证吗?
在这里,您实际上是在执行处理程序:
refilterInput.addEventListener('keyup', firstfilter(rtextDiv, fil1,refilterInput));
您应该只提供处理程序名称:
refilterInput.addEventListener('keyup', firstfilter);
并且处理程序可以改进:
function firstfilter(e) {
var rtextDiv = this.parentNode.parentNode.getElementsByClassName('rtext')[0];
while (rtextDiv.firstChild) {
rtextDiv.removeChild(rtextDiv.firstChild);
}
var fil1 = filteredPropertiesTable(res, this.value); // you didn't say what is res
rtextDiv.appendChild(fil1);
};
相关文章:
- servlet中的请求对象,而不是从jsp接收参数值
- 我应该始终删除EventListener吗
- eventListener出现JavaScript错误
- 如何从 url 中提取参数值
- 使用其中一个元素作为参考点,从Javascript数组中选择元素
- EventListener只能工作一次
- Eventlistener in javascript to jQuery
- 有条件地创建ajax url参数以与jQuery Validate一起使用
- 在javascript中,我正在使用EventListener,并且我得到了TypeError xyz = null
- 如何将 JavaScript 变量传递给 JSP 参数值
- 在回调函数中使用参数值
- Javascript Eventlistener for Update / Change on Element / in
- 使用Angular添加EventListener并将其删除
- Javascript音频分层eventListener HTML5在多次迭代中失败
- 正在添加用于文件删除的eventListener
- Tabtastic,javascript组件..如何添加eventlistener来捕获选项卡单击
- 在AJAX url中如何获取php变量的参数值
- 使用 php 在数据库中传递 js 参数值
- 一旦调用了另一个函数/EventListener,就停止它
- 为什么Ajax请求更改参数值