How do I check if file exists in jQuery or pure JavaScript?
With jQuery:
$.ajax({ url:'http://www.example.com/somefile.ext', type:'HEAD', error: function() { //file not exists }, success: function() { //file exists }});
EDIT:
Here is the code for checking 404 status, without using jQuery
function UrlExists(url){ var http = new XMLHttpRequest(); http.open('HEAD', url, false); http.send(); return http.status!=404;}
Small changes and it could check for status HTTP status code 200 (success), instead.
EDIT 2: Since sync XMLHttpRequest is deprecated, you can add a utility method like this to do it async:
function executeIfFileExist(src, callback) { var xhr = new XMLHttpRequest() xhr.onreadystatechange = function() { if (this.readyState === this.DONE) { callback() } } xhr.open('HEAD', src)}
A similar and more up-to-date approach.
$.get(url) .done(function() { // exists code }).fail(function() { // not exists code })
This works for me:
function ImageExist(url) { var img = new Image(); img.src = url; return img.height != 0;}