在我的 php 文件解析和下载数据时调用 preloader(gif , loading image)
Posted
技术标签:
【中文标题】在我的 php 文件解析和下载数据时调用 preloader(gif , loading image)【英文标题】:call preloader(gif , loading image) while my php file parse and download data 【发布时间】:2012-12-25 18:05:02 【问题描述】:这是我的 php 文件,它正在从服务器下载图像和数据文件
<?php
header("Cache-Control: no-cache, must-revalidate");
//header("Expires: Tue, 25 sep 2012 09:00:00 GMT+5.30");
header("Content-Type: application/xml; charset=utf-8");
clearstatcache();
// download xml.....................................................
$url = "http://ippaddress/msn/getdata.php?result=3";
//echo $url;
$filename = "E://wamp/www/msn_mytype01-12-12/test.xml";
$handle = file_get_contents($url);
file_put_contents($filename, $handle);
$doc = new DOMDocument();
$doc->load( 'test.xml' );
$employees = $doc->getElementsByTagName( "detail" );
foreach( $employees as $employee )
$id = $employee->getElementsByTagName( "image" );
$imgid = $id->item(0)->nodeValue;
// download Images.........................
$imageUrl = "http://ippaddress/msn/IMAGE/".$imgid;
$filename = "E://wamp/www/msn_mytype01-12-12/Images/".$imgid;
$handle = file_get_contents($imageUrl);
file_put_contents($filename, $handle);
echo('XML Downloded-Successfullyy');
?>
我正在从 j-query 按钮单击事件中调用这个 php 文件...如下
$(document).on('click','#syncdata',function()
window.location.href="downloadfiles.php";
);
现在我想调用这个文件进行下载,当它正在下载图像时,我想显示加载图像或进程轮 (.gif) 文件,当它完成下载这个图像时,它会从我的 jquery/html 文件中返回文件被调用的地方;我也用 ajax 试过这个,但我的图像没有显示我不知道为什么? .这两个文件都在同一个文件夹中,但是当我单击按钮并下载图像时,它不会回调到我的 html/juery 文件并且不显示预加载的 .gif 图像
下面是我如何使用 ajax
$(document).on('click','#test',function()
makeRequest();
);
function makeRequest()
var sendurl=address:'htp://localhost:8082/BMS_mytype/downloadfiles.php'
$('#preloader').show();
$.ajax(
type:"POST",
url:"dummycall.php",
data:sendurl,
success:function(xml)
alert(xml);
var result= $(xml).find('status').text();
if(result == "Success")
$('#preloader').hide();
window.location.href="option.html";
callback.call(null);
,
error: function()
alert("An error occurred while processing XML file.");
//error ends..
);
$('#preloader').hide();
);
【问题讨论】:
【参考方案1】:使用这个:
就在 ajax 函数之前:
$(document).ajaxStart(function()
$('#preloader').show();
);
就在ajax函数之后:
$(document).ajaxComplete(function()
$('#preloader').hide();
);
【讨论】:
你能告诉我相关的演示吗?我无法做到这一点,我按照你的指南做了,但没有工作以上是关于在我的 php 文件解析和下载数据时调用 preloader(gif , loading image)的主要内容,如果未能解决你的问题,请参考以下文章
Bootstrap Modal,在按钮单击时调用 Action Result 方法
连接 SAP Hana 数据库时调用未定义函数 odbc_connect() 消息
URLStream 在我的 flex AIR 应用程序中引发 Error#2029
为啥我的 UICollectionView 支持方法仅在我的 ViewController 设置为初始视图控制器时调用?