Jquery 无法使用AJAX从外部访问XML数据
我无法使用下面的AJAX代码访问xml文件的内容。但是,当我尝试访问本地存储在计算机上的文件时,它工作正常。我试图从这个xml文件中提取数据以生成我自己的倒计时。请告知 这是我的密码:Jquery 无法使用AJAX从外部访问XML数据,jquery,ajax,xml,Jquery,Ajax,Xml,我无法使用下面的AJAX代码访问xml文件的内容。但是,当我尝试访问本地存储在计算机上的文件时,它工作正常。我试图从这个xml文件中提取数据以生成我自己的倒计时。请告知 这是我的密码: // Reading from .xml // $(document).ready(function() { function loadfail(){ alert("Error: Failed
// Reading from .xml
//
$(document).ready(function()
{
function loadfail(){
alert("Error: Failed to read file!");
}
function load_date(document){
$(document).find("countdown").each(function(){
var $date = $(this);
var $day = $date.find('startdays').text();
var $hours = $date.find('starthours').text();
var $minutes = $date.find('startminutes').text();
var $seconds = $date.find('startseconds').text();
$('.day').text($day);
$('.hours').text($hours);
$('.minutes').text($minutes);
$('.seconds').text($seconds);
$('#counter').countdown({
image: 'images/digits.png',
//startTime: '1:12:12:00'
startTime: $day + ':' + $hours + ':' + $minutes + ':' + $seconds,
});
});
}
$.ajax({
//url: 'date.xml', // name of file with our data
//url: 'http://localhost/countdown02/date.xml', // name of file with our data
url: 'http://website.com/dev_kit/date.xml', // name of file with our data
dataType: 'xml', // type of file we will be reading
success: load_date, // name of function to call when done reading file
error: loadfail // name of function to call when failed to read
});
});
这并不是jQuery对这个问题的真正回答,但是,它完成了任务。因为我是用php开发这个站点的,所以我只想从主机服务器复制xml文件,并将其复制到本地目录以供访问。这是我在没有卫生设施的情况下使用的解决方案,等等
<?php
$file = 'http://website.com/dev_kit/date.xml';
$newfile = './date.xml';
if ( copy($file, $newfile) ) {
echo "Copy success!";
}else{
echo "Copy failed.";
}
?>
非常感谢你们中那些花时间帮助我的人 在loadfail函数中,输出传递的三个参数。它们将帮助您诊断问题。xml文件是否位于js脚本之外的另一个域上?@Louis是的,xml位于js脚本之外的另一个域上。这就是我的困境。@Jasper我会试试的。我对jQuery还是新手。谢谢,这是你的问题。这称为跨域请求,如果没有额外的工作,它将无法工作。有几种可能性:CORS、JSONP、服务器端代理。谷歌搜索,你可能会找到一个适合你的解决方案。