4

我试图查看单击链接时是否存在本地文件,但它总是说它不存在。谁能发现我犯的明显错误?

谢谢

jQuery(document).ready(function() {
   jQuery("a").click(function(){

   var href = jQuery(this).attr('href');

   jQuery.ajax({
       url:href,
       type:'HEAD',
       error: function() {
          alert(href);
       },
       success: function() {
           alert('Huzzah!');
       }
   });
});
4

2 回答 2

2

如果您尝试访问本地文件系统上的文件,则可能由于同源策略而被浏览器阻止。

解决此问题的一种简单方法是运行本地 HTTP 服务器。

例如,如果您安装了 python,只需运行

python -m SimpleHTTPServer
于 2013-04-29T12:59:40.847 回答
2

无法使用 file:// 协议执行 Ajax。由于您使用的是 Phonegap,因此有内置对象用于检查文件是否存在:http ://docs.phonegap.com/en/1.3.0/phonegap_file_file.md.html#FileReader

如何使用phonegap检查电话目录中的文件是否存在

var reader = new FileReader();
var fileSource = <here is your file path>

    reader.onloadend = function(evt) {

        if(evt.target.result == null) {
           // If you receive a null value the file doesn't exists
        } else {
            // Otherwise the file exists
        }         
    };

    reader.readAsDataURL(fileSource);

祝你好运 !!

于 2013-04-29T13:26:45.617 回答