有时候对数据库的操作需要比较长的等待时间,但这种等待是必要的,也没有性能的提升空间,
那么这时候给用户一个提示,让用户明白在做了操作之后,程序正在执行,而不是没有没有任何响应。
最近在做job定时任务的时候,由于调用pl/sql,每一个job包含多个存储过程,
更新的数据又是百万级甚至更高级别的,所以有一个较长的等待过程,所以给了一个简单的提示:
js代码如下:
- /*
- * 【手动同步】数据
- */
- $('#btnJobs').click(function(){
- var job = $('#job').val();
- if(job.length==0){
- alert('请选择同步数据类型!');
- return false;
- }
- var $start = $('#startSpan').ajaxStart(function(){
- $(this).html('正在执行...');
- });
- var url="../userJobs/synchroJobs.do";
- $.ajax({
- url:url,
- data:{job:job},
- success:function(){
- $start.show();
- alert("数据同步成功!");
- },
- complete:function(){
- //$start.css('display','none');
- $start.hide();
- }
- });
- });
这样便给用于一个简单的【正在执行...】的提示,当程序执行完毕弹出【数据同步成功!】提示框,点击确定之后那个页面上的span元素便会隐藏起来。