Javascript 我怎样才能阻止我的页面加载到另一个HTML并发出错误警报呢?
我目前正试图停止我的HTML页面加载到另一个HTML页面,这会给我一个错误,相反,我希望它显示在一个警报对话框Javascript 我怎样才能阻止我的页面加载到另一个HTML并发出错误警报呢?,javascript,html,Javascript,Html,我目前正试图停止我的HTML页面加载到另一个HTML页面,这会给我一个错误,相反,我希望它显示在一个警报对话框 函数下载(){ location.href=“ModifiedIndex/”+document.getElementById(“refID”).value+“.zip”; 如果(location.href==null){ 警报(document.getElementById(“refID”).value+“.zip”+”不存在 存在!) } } 输入文件名#开始下载。。。 下载 试试
函数下载(){
location.href=“ModifiedIndex/”+document.getElementById(“refID”).value+“.zip”;
如果(location.href==null){
警报(document.getElementById(“refID”).value+“.zip”+”不存在
存在!)
}
}
输入文件名#开始下载。。。
下载
试试看
异步函数下载(){
让url=“ModifiedIndex/”+refID.value+“.zip”;
试一试{
让r=wait-fetch(url,{method:'HEAD'});
位置=url;
}捕获(e){
警报(refID.value+“.zip不存在!”)
}
}
输入文件名#开始下载。。。
下载一旦您更新位置。href
浏览器将开始进入该页面,因此该行代码之后的任何内容或多或少都是无关的。如果已经要加载页面,则无法停止加载该页面。您应该首先检查文件是否存在,然后相应地重定向如果要检查文件是否存在,必须使用ajax
<h3>Enter FileName # to start download...</h2>
<input type="text" id="refID" title="Enter FileName # to start download">
<a href="#" id="click" download>Download</a>
function input() {
let input = document.getElementById("refID");
let value = input.value;
if (! value) {
alert('The Input is empty');
return false;
}
return value;
}
let click = document.getElementById("click");
click.onclick = function (e) {
if (input()) {
let file = `${input()}.zip`;
this.href = `${input()}.zip`;
}
};
输入文件名#开始下载。。。
函数输入(){
让输入=document.getElementById(“refID”);
设value=input.value;
如果(!值){
警报(“输入为空”);
返回false;
}
返回值;
}
let click=document.getElementById(“click”);
click.onclick=函数(e){
if(输入()){
让file=`${input()}.zip`;
this.href=`${input()}.zip`;
}
};
您在函数的第一行将location.href
设置为字符串,然后在if
语句的第三行测试它是否null
-没有太多意义。location.href将永远不会被设置null@JasonAller谢谢你的建议:用“头”来减少流量:)-非常聪明-我更新答案