检查文件是否存在

时间:2013-04-29 12:54:21

标签: javascript jquery html

我正在尝试查看单击链接时是否存在本地文件,但它始终表示它不存在。谁能发现我犯过的一个明显的错误?

由于

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!');
       }
   });
});

2 个答案:

答案 0 :(得分:2)

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

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

e.g。如果你安装了python,只需运行

python -m SimpleHTTPServer

答案 1 :(得分:2)

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

How to check a file's existence in phone directory with 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);
祝你好运!!