如何在javascript验证中放入错误
how to put errors in javascript validation
我正在使用带有警报的javascript验证。完整的代码是:
<html>
<head>
<title>Form Validation</title>
<script type="text/javascript">
<!--
function validateEmail()
{
var emailID = document.myForm.EMail.value;
atpos = emailID.indexOf("@");
dotpos = emailID.lastIndexOf(".");
if (atpos < 1 || ( dotpos - atpos < 2 ))
{
alert("Please enter correct email ID")
document.myForm.EMail.focus() ;
return false;
}
return( true );
}
function validate()
{
if( document.myForm.Name.value == "" )
{
alert( "Please provide your name!" );
document.myForm.Name.focus() ;
return false;
}
if( document.myForm.EMail.value == "" )
{
alert( "Please provide your Email!" );
document.myForm.EMail.focus() ;
return false;
}else{
// Put extra check for data format
var ret = validateEmail();
if( ret == false )
{
return false;
}
}
if( document.myForm.Zip.value == "" ||
isNaN( document.myForm.Zip.value ) ||
document.myForm.Zip.value.length != 5 )
{
alert( "Please provide a zip in the format #####." );
document.myForm.Zip.focus() ;
return false;
}
if( document.myForm.Country.value == "-1" )
{
alert( "Please provide your country!" );
return false;
}
return( true );
}
//-->
</script>
</head>
<body>
<form action="/cgi-bin/test.cgi" name="myForm" onsubmit="return(validate());">
<table cellspacing="2" cellpadding="2" border="1">
<tr>
<td align="right">Name</td>
<td><input type="text" name="Name" /></td>
</tr>
<tr>
<td align="right">EMail</td>
<td><input type="text" name="EMail" /></td>
</tr>
<tr>
<td align="right">Zip Code</td>
<td><input type="text" name="Zip" /></td>
</tr>
<tr>
<td align="right">Country</td>
<td>
<select name="Country">
<option value="-1" selected>[choose yours]</option>
<option value="1">USA</option>
<option value="2">UK</option>
<option value="3">INDIA</option>
</select>
</td>
</tr>
<tr>
<td align="right"></td>
<td><input type="submit" value="Submit" /></td>
</tr>
</table>
</form>
</body>
</html>
问题是我想要的是errordiv而不是alerts。如何在div中添加error和success类而不是alert?请帮忙。
我想你想展示一种比提醒更好的显示错误的方法
用display:none
在页面的最底部放一个div
仅使用的警报插页
ShowError('yourmsg');
function ShowError(msg){
setTimeOut(function(){
document.getElementById('error').innerHTML = msg;
},4000);
}
首先,您使用的是表结构,我认为列表在div标记中很好。。。。这将很容易发送数据。。。。。。。
现在我明白了。。。在每个输入框附近使用跨度标签,如
<tr>
<td align="right">Name</td>
<td><input type="text" name="Name" /></td>
<span id="nameError"></span>
</tr>
或者在java脚本中定义span Id上的错误
if( document.myForm.Name.value == "" )
{
// alert( "Please provide your name!" );
document.getElementById("nameError").innerHTML="Plz provide your name ";
document.myForm.Name.focus() ;
return false;
}
当您开始验证时,有一个单一的标志,如blIsFormValid
,并保持一个单一字符串var strErrorMsg
在验证表单时,如果遇到一个验证错误,请将blIsFormValid
设置为false
。接下来,每当您遇到验证错误时,请将该错误写入strErrorMsg
。
例如:
function validate()
{
var blIsFormValid = true;
var strErrMsg = '';
if( document.myForm.Name.value == "" )
{
blIsFormValid = false;
strErrMsg += "Please enter your name. <br />";
}
if(isEmailValid(document.myForm.Email.value))
{
blIsFormValid = false;
strErrMsg += "Please enter a valid email. <br />";
}
// Add the end checkk...
is(!blIsFormValid)
{
document.getElementById('errDiv').innerHTML = strErrMsg;
}
return blIsFormValid;
}
最后,检查blIsFormValid
的布尔值,并将其放入错误div中。
相关文章:
- 为什么jasmine期望不验证是否抛出了错误
- jQuery在输入下验证post错误消息
- JavaScript表单验证-“;“错误”;不按需要工作
- 当与Dojo验证一起使用时,Chrome 41密码保存会做出错误的选择
- jquery表单验证复选框错误显示
- 页面上的2个表单带有JS验证-其中一个抛出电子邮件验证错误
- 在页面对象文件中验证sendKeys结果会导致未定义的错误(Protractor)
- 表单值未在单击按钮时发布,显示验证错误
- 表单已发送,但验证有错误
- TinyMCE验证给出错误:无法调用方法'getContent'的未定义
- Javascript表单验证-jsFiddle错误
- 无法使用JavaScript打印带有for循环的验证错误
- 为什么我的 JavaScript 会导致 HTML 验证错误
- 错误验证在AngularJS中不起作用
- 在线错误验证
- 接收package.json的解析错误.验证为有效的json
- 错误验证 W3C HTML5 img noscript facebook.com.
- 使用jquery输入文件类型错误验证不工作
- 带有警报的表单错误验证
- Angularjs用ng-href对dropdown/select redirect进行错误验证