javascript - 在javascript中启用和禁用下载按钮
问题描述
我制作了一个表格,要求提供姓名和电子邮件以下载文件。问题是,无论您是否填写名称,“下载”按钮都可以正常工作,即使它显示消息,通知缺少下载文件的信息。
我没有足够的 js 知识来找出在输入名称和电子邮件时使“下载”按钮工作的方法。
有人可以帮忙吗?请!
HTML 下载按钮:
<button type="submit" onclick="window.location.href='download/CV.pdf'">Download</button>
JS:
var email = document.getElementById("email").value;
var error_message = document.getElementById("error_message");
error_message.style.padding = "10px";
var text;
if(name.length < 5){
text = "Please Enter valid Name";
error_message.innerHTML = text;
return false;
}
if(email.indexOf("@") == -1 || email.length < 6){
text = "Please Enter valid Email";
error_message.innerHTML = text;
return false;
}
alert("Thank you!");
return true;
}
谢谢!
解决方案
你可以这样做。
<form onsubmit="return validateForm(event)">
<button type="submit">Download</button>
<input type="text" id="email" placeholder="Email">
<input type="text" id="name" placeholder="Name">
</form>
...
function validateForm(event) {
event.preventDefault();
var email = document.getElementById("email").value;
var name = document.getElementById("name").value;
var error_message = document.getElementById("error_message");
error_message.style.padding = "10px";
var text;
if(name.length < 5){
text = "Please Enter valid Name";
error_message.innerHTML = text;
return;
}
if(email.indexOf("@") == -1 || email.length < 6){
text = "Please Enter valid Email";
error_message.innerHTML = text;
return;
}
window.location.href = "download/CV.pdf";
}
推荐阅读
- reactjs - React 数组状态未更新
- python - 提交表单后重定向到基于函数的详细视图
- arrays - 我如何根据其他数组的值列出列中数组的值 - Excel VBA
- flutter - 未从 Flutter 中的建议中选择时如何重置 TypeAheadFormField 的文本?
- c# - CSV 到使用实体框架的级联模型
- mongodb - Spring Data MongoDB不存在开关错误
- node.js - 400 未找到项目的计费帐户。必须启用计费才能激活服务
- sql - 如何从第二个表中选择前 x 条记录
- ffmpeg - ffmpeg 创建充满人工制品且完全难以辨认的屏幕截图
- javascript - 是否可以在材料ui的选择组件中使用分页?