JavaScriptvalidation空input字段
问候,我有这个input字段<input name="question"/>
我想在提交点击提交button时调用IsEmpty函数。
我试过下面的代码,但没有工作。 任何build议?!
<html> <head> <title></title> <meta http-equiv="Content-Type" content="text/html; charset=unicode"/> <meta content="CoffeeCup HTML Editor (www.coffeecup.com)" name="generator"/> </head> <body> <script language="Javascript"> function IsEmpty(){ if(document.form.question.value == "") { alert("empty"); } return; } </script> Question: <input name="question"/> <br/> <input id="insert" onclick="IsEmpty();" type="submit" value="Add Question"/> </body> </html>
<script type="text/javascript"> function validateForm() { var a=document.forms["Form"]["answer_a"].value; var b=document.forms["Form"]["answer_b"].value; var c=document.forms["Form"]["answer_c"].value; var d=document.forms["Form"]["answer_d"].value; if (a==null || a=="",b==null || b=="",c==null || c=="",d==null || d=="") { alert("Please Fill All Required Field"); return false; } } </script> <form method="post" name="Form" onsubmit="return validateForm()" action=""> <textarea cols="30" rows="2" name="answer_a" id="a"></textarea> <textarea cols="30" rows="2" name="answer_b" id="b"></textarea> <textarea cols="30" rows="2" name="answer_c" id="c"></textarea> <textarea cols="30" rows="2" name="answer_d" id="d"></textarea> </form>
看到这里的工作示例
您缺less所需的<form>
元素。 这里是你的代码应该是这样的:
function IsEmpty(){ if(document.forms['frm'].question.value === "") { alert("empty"); return false; } return true; }
HTML:
<form name="frm"> Question: <input name="question"/> <br /> <input id="insert" onclick="return IsEmpty();" type="submit" value="Add Question"/> </form>
input字段可以有空白 ,你想要阻止:
function isEmpty(str){ return !str.replace(/^\s+/g, '').length; // boolean (`true` if field is empty) }
提示 :删除!
如果需要一个名为ie的函数,则反转逻辑: isValid()
如果用户禁用javascript,我想添加必要的属性:
<input type="text" id="textbox" required/>
它适用于所有现代浏览器。
添加一个ID“问题”到你的input元素,然后试试这个:
if( document.getElementById('question').value === '' ){ alert('empty'); }
您当前的代码不起作用的原因是因为您没有FORM标签。 此外,不推荐使用“name”进行查找,因为它已被弃用。
请参阅@Paul Dixon在这篇文章中的回答: “名称”属性是否被认为过时了<a>锚标签?
if(document.getElementById("question").value.length == 0) { alert("empty") }
if(document.getElementById("question").value == "") { alert("empty") }
只需添加一个ID标签到input元素…即:
并检查你的元素的值javascript:
的document.getElementById( “问题”)。值
噢,得到火狐/萤火虫。 这是做JavaScript的唯一方法。