我们有时候希望系统能自动刷新后台数据或者做某个动作,那么定时器的作用就体现出来了。
EasyMvc默认提供的服务器可以定时调前端方法与定时调后端方法,先看例子:
- 定时调客户端事件
实现代码:
@Html.Q().Timer().Name("mxd").Interval(1000).ClickClientEvent("before") <script> var i = 0; function before() { i++; layer.msg("客户端方法,结果为:" + i); } </script>
请注意:
Interval 是用来设置定时器的时间间隔的。
ClickClientEvent 需要传入你希望调用的客户端方法名。
效果截图如下:
- 定时调服务端事件
实现代码:
@Html.Q().Timer().Name("mxd").Interval(1000).ClickServerEvent("/Home/GetTime", null, "back") <script> i = 0; function back(data) { i++; layer.msg("服务器返回的第" + i + "条消息:<br>" + data); } </script>
请注意:
ClickServerEvent 第一个参数为服务器的Action地址,第二个参数为JSON数据,第三个参数为回调的客户端方法,回调方法会自动携带服务器返回的数据data。
效果截图如下:
技巧:如果您同时触发了客户端方法与服务端方法,需要您在客户端方法里返回true,服务端方法才会被调用,意味着可以在触发服务端方法之前做一些客户端的校验等动作。
深入:本质上,定时器封装了js的setInterval方法。:)
总结:定时器的使用就简单介绍到这里,希望继续保持简单的心情。
更多使用示例请浏览在线示例:http://core.zwc.cn