您的位置:首页 > Web前端 > BootStrap

Bootstrap进度条与AJAX后端数据传递结合使用实例详解

2017-04-23 11:10 1016 查看

很多时候,我们执行页面上某个URL请求的时候,需要有等待的时间。如果是直接的页面跳转,浏览器会有缓冲进度展示,但是如果是AJAX,我觉得应该自己加上进度条,等待数据全部接收到之后,进度条消失,展示页面。

在Yii框架里面使用了AJAX后,觉得前后端的数据交互变得方便多了。

下面直接贴代码啦

控制器Controller

public function actionTest(){
if(isset($_POST["number"])){
$html = “success”;
}else{
$html ="something wrong";
}
sleep(5);
echo $html;
Yii::app()->end();
}

View视图

<!-- 模态框(Modal) -->
<div class="modal fade" id="searchModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-body">
<div id='modal_message' style="text-align: center"><h2>正在查询中.....</h2></div>
<div class="progress progress-striped active">
<div class="progress-bar progress-bar-success" role="progressbar" aria-valuenow="60"
aria-valuemin="0" aria-valuemax="100" style="width: 100%;">
<span class="sr-only">100% 完成</span>
</div>
</div>
</div>
</div><!-- /.modal-content -->
</div><!-- /.modal -->
</div>
<script type="text/javascript">
$("#searchModal").modal("show");//显示“正在查询”字样的模态框
htmlobj = $.ajax({
url:"/Controller/test",
type : 'POST',
data : { "number" : "123",
},
dataType : "text",
//contentType : 'application/x-www-form-urlencoded',
async : true,
success : function(mydata) {
$('#searchModal').modal('hide');//服务器停止了5秒,sleep(5),假设是查询数据用了5秒
//setTimeout("$('#searchModal').modal('hide')",2000); //设置2000毫秒之后模态框消失
$('#searchModal').on('hidden.bs.modal', function () {
//    // 执行一些动作...
$("#homeworkContent").html(mydata); //显示后端传递的结果
});
},
error : function() {
alert("calc failed");
}
});
</script>

以上所述是小编给大家介绍的Bootstrap进度条与AJAX后端数据传递结合使用,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

您可能感兴趣的文章:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  bootstrap ajax 进度条