我正在使用url参数告诉后端如何在页面上对多个列表进行排序。基于每个列表的选择块(sortBy,orderBy)设置参数。在页面加载时,我设置选择以匹配参数。
function setSortOptions()
{
var select = document.getElementsByTagName("select"),
qParams = getParameters();
for (var i=0, l = select.length; i < l; i++)
{
var self = select[i],
name = self.name,
value = qParams[name],
opt = self.options[value];
if(opt) opt.selected = true;
select[i].addEventListener("change", SortMyLists(event), false);
}
}
使用我当前的函数,事件侦听器立即触发SortMyLists。当我在分配事件监听器之前更改所选选项时,为什么会这样?
答案 0 :(得分:0)
不要执行该功能。只需传递一个引用:
select[i].addEventListener("change", SortMyLists`, false);