页面数据使用$.ajax()获得,使用template.js渲染到页面上,通过引用另一个html文件(绑定事件的按钮也在这个文件中)
然后我在ajax方法之后给button绑定click事件,发现找不到元素,因为button还没渲染出来。
现在的解决办法是给click套了一个setTimeout(),1s后执行,功能上没问题,就是太简陋了。
请问还能通过什么方法实现?
页面数据使用$.ajax()获得,使用template.js渲染到页面上,通过引用另一个html文件(绑定事件的按钮也在这个文件中)
然后我在ajax方法之后给button绑定click事件,发现找不到元素,因为button还没渲染出来。
现在的解决办法是给click套了一个setTimeout(),1s后执行,功能上没问题,就是太简陋了。
请问还能通过什么方法实现?
可以尝试用 Promise。
参考:http://liubin.org/promises-book/
比较简单可以在 ajax 加上 complete callback 来处理 按钮 click 绑定。
<button onclick="test*()">我是按钮</button>
function test(){
do someting...
}
注意test函数的位置,作用域问题。。应该可以
8 回答4.7k 阅读✓ 已解决
6 回答3.4k 阅读✓ 已解决
5 回答2.8k 阅读✓ 已解决
5 回答6.3k 阅读✓ 已解决
4 回答2.3k 阅读✓ 已解决
4 回答2.8k 阅读✓ 已解决
3 回答2.4k 阅读✓ 已解决
使用冒泡