在javascript验证成功时隐藏span元素
Make span element hidden when javascript validation succeeds
我一直在思考如何在JavaScript验证成功后使span元素再次隐藏。当前onchange
和onblur
显示红色范围,如果名称字段中没有文本或有数字,则显示错误。当输入正确的文本时,此消息不会消失。我只是想知道如何在输入正确文本时使此消息消失?代码如下。
JavaScript:
function validateName() {
var name = form.firstname.value;
if (form.firstname.value == "") {
document.getElementById("firstnameInvalid").style.visibility = "visible";
return false;
} if (/[0-9]/.test(name)) {
document.getElementById("firstnameInvalid").style.visibility = "visible";
return false;
}
return true;
}
表单HTML:
<form name="form" method="post" action= "userdetails.html" onsubmit="return validate(this)">
<p>First Name:<input type="text" name="firstname" onblur="validateName()" onchange="validateName()" id="name">
<span id="firstnameInvalid" style="color:red; visibility:hidden"> First Name is Invalid </span>
</p>
你走在了正确的轨道上。
Fiddle演示
function validateName() {
var name = form.firstname.value;
if (form.firstname.value == "") {
document.getElementById("firstnameInvalid").style.visibility = "visible";
return false;
} else if (/[0-9]/.test(name)) {
document.getElementById("firstnameInvalid").style.visibility = "visible";
return false;
} else {
document.getElementById("firstnameInvalid").style.visibility = "hidden";
}
}
你可以通过使用你的变量并删除返回来简化这一点,这似乎不是必要的:
Fiddle演示
function validateName() {
var name = form.firstname.value;
if (name == "") {
document.getElementById("firstnameInvalid").style.visibility = "visible";
} else if (/[0-9]/.test(name)) {
document.getElementById("firstnameInvalid").style.visibility = "visible";
} else {
document.getElementById("firstnameInvalid").style.visibility = "hidden";
}
}
我建议您使用:
style="display:none"
-隐藏style="display:block"
-可见
HTML:
<p>First Name:<input type="text" name="firstname" onblur="validateName(this.value)" onchange="validateName(this.value)" id="name">
<span id="firstnameInvalid" style="color:red; display:none;"> First Name is Invalid </span></p>
Javascript:
function validateName(name) {
if (name == "")
{
document.getElementById("firstnameInvalid").style.display="block";
return false;
}
else if (/[0-9]/.test(name))
{
document.getElementById("firstnameInvalid").style.display = "none";
return false;
}
return true;
}
相关文章:
- 使用Clipboard.js复制span文本
- 在单击任何位置时隐藏元素,而不检查每次DOM单击
- 如何隐藏空<span>在IE中使用javascript.(注意,在其他浏览器中工作正常)
- jQuery隐藏函数与“;按钮“;以及“;span”;但不是用“;a“;要素
- 显示/隐藏span id的选择选择
- Span是否隐藏在webkit浏览器上
- 使用Javascript删除/隐藏具有特定类的span标签
- 如何获得文本包围的一个span标签,并保存到一个隐藏的输入值,当我点击跨度
- Span文本隐藏的动画DIV尽管z索引
- 如何隐藏p标签中的所有内容,除了span jQuery
- 如果使用jQuery可以看到另一个span's的子类,则隐藏该类
- 获取隐藏类型值的span id的值
- Jquery通过隐藏属性和值比较改变span值
- AngularJS -有条件地隐藏span
- 为什么获胜't这个span隐藏,为什么显示为#text
- 在javascript验证成功时隐藏span元素
- Span类与jQuery -显示隐藏
- 根据显示/隐藏span标记/Javascript组设置span文本
- 显示隐藏的span元素Javascript
- 如何隐藏未使用
或& lt; span>