2013年11月21日 星期四

[程式] HTML & JavaScript - Check if File at Internal Domain Exists

<script>
function check_url(){
    var req = new XMLHttpRequest();
    var exist = false;
    req.open('GET', $("#<ID>").val(), true);
    req.onreadystatechange = function () {
        if (req.readyState == 4) {
            if(req.status != 404)
                exist = true;       
            else
                alert("Not Exist");
        }
    }
    req.send();
    if (!exist)
        return false;
}
</script>
<input type="submit" onclick="return check_url()">

  • void open(method, url, async)
  • onreadystatechange -
    .
    not be used with synchronous requests
    . set before calling send()
  • readyState == 4 : DONE, operation is completed
  • send - Any event listeners must be set before calling send()
  • FLOW, req.open -> req.send -> req.onreadystatechange -> if
NOTE:
該方法僅能檢查相同domain下的檔案
若是外部連結 ex.http:www.google.com 則無法檢查

Ref: https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest

沒有留言:

張貼留言