这是我通过AJAX动态编写的提交按钮:
var htmlpage = "<div class='pages'>"
for (i=1 ; i < pages+1 ; i++)
{
htmlpage += "<li><input type='submit' value='"+i+"' onclick='updatefilters;' /></li"
}
htmlpage += "<div>"
htmlpage += "</ul>";
我正在尝试重新运行updatefilters()函数来更改显示的项目。我认为在没有看到所有代码的情况下进行概念化有点困难......但实质上,我需要做的就是每次点击提交按钮再次运行该函数...现在,它给了我一个{{1}萤火虫中的错误。
继承我的整个JS以供参考
updatefilters is undefined
答案 0 :(得分:1)
这种方法似乎存在一些问题。
首先,您实际上并未在onclick
处理程序中调用该函数。
htmlpage += "<li><input type='submit' value='"+i+"' onclick='updatefilters;' /></li"
应该是:
htmlpage += "<li><input type='submit' value='"+i+"' onclick='updatefilters();' /></li"
其次,无法从全局范围访问updatefilters
函数,这是执行匿名函数的地方。您必须将function updatefilters(ev, ui)
移到onload
回调之外,可能会移到脚本块的顶部。