Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/449.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,我想用JavaScript创建一个带有文本框和提交按钮的表单。只有当我在“收件人”文本框中输入总共10位数的电话号码时,该按钮才应启用 给你,虽然玛达拉是对的,你应该自己试试这些东西,不是吗 var num=document.querySelector(“输入[type='number']”), submit=document.querySelector(“输入[type='submit']”); num.onkeyup=函数(事件){ var val=此值+“”; 如果(val.length

我想用JavaScript创建一个带有文本框和提交按钮的表单。只有当我在“收件人”文本框中输入总共10位数的电话号码时,该按钮才应启用

给你,虽然玛达拉是对的,你应该自己试试这些东西,不是吗

var num=document.querySelector(“输入[type='number']”),
submit=document.querySelector(“输入[type='submit']”);
num.onkeyup=函数(事件){
var val=此值+“”;
如果(val.length==10){
submit.disabled=false;
}否则{
submit.disabled=true;
}
};
//改为使用下面的方法,提交按钮在数字长度为10后立即显示
/*
函数areYouReady(){
var val=数值+“”;
如果(val.length==10){
isReady=真;
submit.disabled=false;
}否则{
isReady=真;
submit.disabled=true;
}
请求动画帧(您准备好了吗);
}
你准备好了吗;
*/

非常简单的解决方案:

HTML


您是否尝试过任何方法来完成您想要的任务?这是一项光荣的任务,我希望您没有任何问题,但如果您尝试过,请随意分享您的非工作代码,我相信SO上的一位善良的人会试图解释您做错了什么。祝你度过愉快的一天
requestAnimationFrame(你准备好了吗)---这是非常低效的。您最好将侦听器附加到输入keyup事件。@zerkms读取注释。这是我做的第一件事。在未注释侦听器的情况下运行代码,您就会明白我为什么使用RequestAnimationFrame。我不知道您的注释代码与我的建议有何关联。如果您不确定如何处理keyup,请检查另一个答案。@zerkms查看代码,它将侦听onchange事件。但这表现得很奇怪。您是否在未注释注释注释代码的情况下运行了该代码段?\同样,我不知道我关于使用
onkeyup
事件的建议与您使用
onchange
的代码有何关系
.onchange
也不是一个解决方案。PS:有
==:-)
<input id="phone" type="text">
<button id="btn" disabled>Send</button>
var btn=document.getElementById("btn");
var phone=document.getElementById("phone");
phone.onkeyup=function(){
    btn.disabled=!(phone.value.length===10);
};