Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Ajax in Jquery does not work from local file

I created simple html file with simple ajax.

index.html:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; Charset=UTF-8">
<script type="text/javascript" src="jquery.js"></script>
</head>
<body>
    <div id="content"></div>

    <script>
        function show()
        {
                $.ajax({
                url: "2.html",
                cache: false,
                success: function(html){
                    $("#content").html(html);
                }
            });
        }

        $(document).ready(function(){
            show();
            setInterval('show()',1000);
        });
    </script>

</body>
</html>

File 2.html located in the same directory as the file index.html. And contains for example:

 <p>ssss hkl jh lkh <b>d1111</b></p>

When I run the index.html on the webserver, everything works. But if you run file index.html on the computer as a local file ajax not working. How to fix it?

like image 511
Harrix Avatar asked Jul 30 '13 13:07

Harrix


2 Answers

Some browsers implement strong security measures to prevent downloaded webpages from accessing arbitrary files on the file system.

Switch to a browser with weaker security (I think Firefox permits access to local files via XHR) or stop trying to run a website without HTTP.

like image 177
Quentin Avatar answered Oct 05 '22 17:10

Quentin


This is a known problem with Chrome, if you are checking on it. Use XAMPP to run a local webserver, and test your ajax call.

Check this ticket: https://code.google.com/p/chromium/issues/detail?id=40787

like image 37
Bijoy Anupam Avatar answered Oct 05 '22 17:10

Bijoy Anupam