Jquery 无法使用AJAX从外部访问XML数据

Jquery 无法使用AJAX从外部访问XML数据,jquery,ajax,xml,Jquery,Ajax,Xml,我无法使用下面的AJAX代码访问xml文件的内容。但是,当我尝试访问本地存储在计算机上的文件时,它工作正常。我试图从这个xml文件中提取数据以生成我自己的倒计时。请告知 这是我的密码: // Reading from .xml // $(document).ready(function() { function loadfail(){ alert("Error: Failed

我无法使用下面的AJAX代码访问xml文件的内容。但是,当我尝试访问本地存储在计算机上的文件时,它工作正常。我试图从这个xml文件中提取数据以生成我自己的倒计时。请告知

这是我的密码:

// 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、服务器端代理。谷歌搜索,你可能会找到一个适合你的解决方案。