用加载图片解决在ajax数据加载中页面出现短暂空白的问题

在项目中用ajax异步获取数据后有时会因为数据问题或者网络问题,页面一直显示空白,现在用加载图片来过渡这种状态:

<script>
	$(function(){
		$.ajax({
			url:'',//提供接口的文件地址链接
			dataType:'json',
			type:'POST',	
			beforeSend: function(){
				$('#loading').html("<img src=\"images/loading.gif\" width=\"15%\" style=\"text-align:center;margin:0 auto;\"><p style=\"color:#999;font-size:14px\">加载中,请稍后……</p>") //数据发送过程中先加载图片	
			},
			error: function(msg){ //数据读取失败显示
				zNodes=data.responseJson;
				alert("对不起,数据获取失败,请联系管理员");
			},
			success:function(msg){ //数据读取成功并显示数据列表
				$('#loading').fadeOut(1000);	//图片显示时间;
				var ul = "";
				for(var i= 0;i<msg.legth;i++){ //数据列表行数
					ul += "<li class='list'><a href='php/phpArticle.php?art="+msg[i]['id']+" 'class='widget-list-link'>" + msg[i]['title']+"<i class='more-mark'>"+">>"+"</i></a></li>";
				} 
					$("#list").html(ul);
				
			},
			error:function(){ //失败时显示
				console.log("链接错误") ;
			}
		});
	});
	
</script>

数据在加载状态显示

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
使用Echarts在Java动态数据需要以下步骤: 1. 创建一个包含Echarts的HTML页面,通过Ajax请求从后台获取数据,然后渲染Echarts图表。 2. 在Java后端编写一个Controller,接收前端Ajax请求,查询数据库或者其他数据源,然后将数据以JSON格式返回给前端。 3. 在JavaScript编写Ajax请求,获取后端返回的JSON数据,然后解析数据并渲染Echarts图表。 以下是一个简单的示例代码: 1. HTML页面 ```html <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>动态Echarts数据</title> <script src="https://cdn.bootcdn.net/ajax/libs/echarts/4.9.0/echarts.min.js"></script> </head> <body> <div id="chart" style="width: 600px;height:400px;"></div> <script> // 使用Ajax获取数据并渲染Echarts图表 function renderChart() { $.ajax({ url: '/getData', type: 'GET', dataType: 'json', success: function (data) { var chart = echarts.init(document.getElementById('chart')); chart.setOption({ title: { text: '动态Echarts数据' }, tooltip: {}, xAxis: { data: data.categories }, yAxis: {}, series: [{ name: '销量', type: 'bar', data: data.data }] }); } }); } // 页面完成后渲染Echarts图表 $(document).ready(function() { renderChart(); }); </script> </body> </html> ``` 2. Java后端Controller ```java @RestController public class ChartController { @GetMapping("/getData") public Map<String, Object> getData() { // 从数据库或其他数据源查询数据 List<String> categories = Arrays.asList("衬衫", "羊毛衫", "雪纺衫", "裤子", "高跟鞋", "袜子"); List<Integer> data = Arrays.asList(5, 20, 36, 10, 10, 20); // 将数据以JSON格式返回给前端 Map<String, Object> result = new HashMap<>(); result.put("categories", categories); result.put("data", data); return result; } } ``` 3. JavaScriptAjax请求 ```javascript // 使用Ajax获取数据并渲染Echarts图表 function renderChart() { $.ajax({ url: '/getData', type: 'GET', dataType: 'json', success: function (data) { var chart = echarts.init(document.getElementById('chart')); chart.setOption({ title: { text: '动态Echarts数据' }, tooltip: {}, xAxis: { data: data.categories }, yAxis: {}, series: [{ name: '销量', type: 'bar', data: data.data }] }); } }); } // 页面完成后渲染Echarts图表 $(document).ready(function() { renderChart(); }); ``` 以上是一个简单的使用Echarts在Java动态数据的示例代码。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值