easyui datagrid请求数据失败,页面提示

    datagrid方法用来将请求到的数据加载到表格中,但考虑一种特殊情况,就是服务器崩掉比如tomcat崩了,请求不到数据,还是会加载出一个表格的框框,如下图,



    这样就会影响用户体验,并且报错:Uncaught TypeError: Cannot read property 'length' of undefined。这是因为没有请求到数据,渲染表格出错。

    所以当没有请求到数据时,需要给用户一个提示。

    实现方式可参照easyui官方提供的api

 loader: function(param, success, error){
				var opts = $(this).datagrid('options');
				if (!opts.url) return false;
				$.ajax({
					type: opts.method,
					url: opts.url,
					dataType: 'json',
					success: function(data){
						if (data.success==false){
							error(data);
						} else {
							success(data);				
						}
					},
					error: function(){
						error.apply(this, arguments);
					}
				});
			},
首先要调用loader方法,上面opts是easyui封装的一个对象,有请求的url、请求的方法'post'/'get',然后发送ajax请求,根据请求到的结果data判断执行success()方法还是error()方法,success和error方法对应easyui的onLoadSuccess和onLoadError方法。

onLoadSuccess:function(data){
				//
			}

onLoadError: function(data){
			    // ...
				$.messager.alert('提示信息','请求异常','info',function(){
					 
			 	});   
			},
在loader方法中执行error(data)方法时,就会调用onLoadError方法,弹框给用户提示,如下图


(老铁们,如果解决了你的问题,点个赞噻)

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值