Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/398.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 无法检查文件是否存在并执行语句_Javascript - Fatal编程技术网

Javascript 无法检查文件是否存在并执行语句

Javascript 无法检查文件是否存在并执行语句,javascript,Javascript,我对Java脚本和html非常陌生。 我已经构建了一个网页,主要用于使用标签加载txt或其他html页面 但是我试图创建一个验证语句来检查源文件是否存在并加载iframe,或者它是否不显示消息 我已经尝试了下面的代码,但它就是不工作 有人能帮我吗 <script> var url = checkfile('../folder/test.html'); if (url.exists()){ <iframe id = "allviewer" src

我对Java脚本和html非常陌生。 我已经构建了一个网页,主要用于使用标签加载txt或其他html页面

但是我试图创建一个验证语句来检查源文件是否存在并加载iframe,或者它是否不显示消息

我已经尝试了下面的代码,但它就是不工作

有人能帮我吗

<script>
        var url = checkfile('../folder/test.html');
        if (url.exists()){ 
<iframe id = "allviewer" src = "../folder/test.html"> < /iframe>
        } else { 
           < p > This file does not exist < /p>
        }
    </script>

var url=checkfile('../folder/test.html');
如果(url.exists()){

}否则{
此文件不存在

}
您应该已经避免在脚本标记中添加iframe,如果您想检查文件是否存在,可以使用ajax,但是ajax已经允许您查看内容,因此不再需要iframe

<script type="text/javascript">
    function url_exists(url) {
        return new Promise((resolve, reject) => {
            let xhr = new XMLHttpRequest;
            xhr.open("GET", url, false);
            xhr.send();
            if (xhr.status == 200) resolve(xhr);
            else reject(xhr.status);
        })
    }

    const file = '../folder/test.html';
    url_exists(file).then(t => {
        console.log(t.response); // show file content in the console
        ouputNode.innerHTML = `<iframe id="allviewer" src="${file}"></iframe>`;
    }).catch(e => {
        // on error
    });
</script>
<div id="ouputNode"></div>

函数url_存在(url){
返回新承诺((解决、拒绝)=>{
设xhr=newXMLHttpRequest;
xhr.open(“GET”,url,false);
xhr.send();
如果(xhr.status==200)解析(xhr);
否则拒绝(xhr状态);
})
}
常量文件='../folder/test.html';
url_存在(文件)。然后(t=>{
console.log(t.response);//在控制台中显示文件内容
uputnode.innerHTML=`;
}).catch(e=>{
//论错误
});

感谢您的快速回复。我已经测试过,即使文件存在,页面也没有显示任何内容。我在控制台上获得以下信息:[弃用]主线程上的同步XMLHttpRequest已弃用,因为它会对最终用户的体验产生有害影响。如需更多帮助,请查看。(匿名)@test.html:74 url_存在@test.html:72(匿名)@test.html:82 ServiceNode.html:75在'file:///C:/Users/pcarvalho/Documents/Work%20to%20do/SPT%20Config%20script/New%20Version/html/test.htmlCORS策略已阻止“来自源”的“null”:跨源请求仅支持协议方案:http、数据、chrome、chrome扩展、https。(匿名)@test.html:75 url\u存在@test.html:72(匿名)@test.html:82在您的计算机上安装apache或nginx服务器不要直接使用浏览器中的文件