jQuery中的验证问题
基于这个例子jQuery中的验证问题,jquery,validation,Jquery,Validation,基于这个例子 <html> <head> <title>jQuery: Check if Textarea is empty 3</title> <script type="text/javascript" src="jquery-1.7.2.min.js"></script> </head> <body> <form n
<html>
<head>
<title>jQuery: Check if Textarea is empty 3</title>
<script type="text/javascript" src="jquery-1.7.2.min.js"></script>
</head>
<body>
<form name="form1" method="post" action="">
<label for="comments">Comments:</label>
<textarea name="comments" id="comments"></textarea>
</form>
<input name="check" id="check" type="submit" value="OK" />
<input type="reset" value="Cancelar" onclick="$('form')[0].reset() "/>
<script type="text/javascript">
$('#check').click(function() {
if ( $('#comments').val() == '' )
{
alert('Empty!!!');
}
else
{
alert('Contains: ' + $('#comments').val() );
}
});
</script>
</body>
</html>
由于单选按钮的原因,验证我时出现错误。必须在业务和复选框中选择类型
当然,我有兴趣的要求,必须在饮食为我采取有效的
我还验证了错误的消息文本区域:如果为空,则应显示消息为空!,
但textarea似乎返回空内容
如何修复这些错误?一些问题:
<input name="evento" id="evento" value="empresarial" type="radio"> Empresarial
<input name="evento" id="evento" value="empresarial" type="radio"> Particular
这不仅在语义上是正确的,而且通过添加一个带有适当for属性的标签,用户可以单击整个标签来选择选项,而不仅仅是单击小点单选按钮控件。您还应该对所有复选框执行此操作,并在执行此操作时更正这些复选框上的所有ID:
就您报告的问题而言,textarea报告包含:当您期望为空时,textarea元素包含您在标记中写入的空白:
虽然您当然可以将textarea写入不包含空格的区域,但一般来说,在验证之前,您应该始终修剪输入中的空格,除非它与代码示例中的空格相关。在验证函数上,请尝试:
if ( $('#comments').val().trim() == '' )
请参见此处更新的JSFIDLE:
希望这有帮助。请创建一个JSFIDLE来演示错误,以便人们更容易帮助您!顺便说一句,仅提供与您的发行代码相关的,不是你的整个站点…我的代码原始代码更新了JSFIDLE,但textarea没有正确验证,我必须单击四次退出以警告包含我删除else的if$'comments'。val==但是textarea的验证不起作用。你正在表单的提交处理程序中添加单击处理程序。您应该将其提取到表单验证程序范围之外。此外,还有一些标记问题。我删除了样式,以便更容易看到结构;您可以将它们重新添加到中。问题是验证我的名称字段错误,应该启用输入字母,不允许输入数字,并且必须有3个以上的字符,不起作用。虽然该值验证我q1245和1245y,但当字段的扩展名超过3个字符时,它是否接受该值(即使是数字),但错误。您在代码中的什么地方检查这些条件?我在nombre上看到的唯一验证是$nombre.val.length是否小于4。如果你想测试没有数字,你需要匹配一些东西,可能需要使用正则表达式。
.html, body {
font-family:Verdana, Geneva, sans-serif;
font-size:12px;
}
.inicio {
width:600px;
height:100%;
padding:0px;
margin:0px auto 0px auto;
}
.formulario ul {
float:left;
width:100%;
padding:0px;
margin:0px;
padding-top:20px;
list-style-type:none;
}
.formulario ul li {
float:left;
width:50%;
height:25px;
line-height:25px;
padding:0px;
margin:0px;
list-style-type:none;
padding-top:5px;
}
.formulario ul li.botones {
text-align:center;
}
<input name="evento" id="evento" value="empresarial" type="radio"> Empresarial
<input name="evento" id="evento" value="empresarial" type="radio"> Particular
<input name="evento" id="evento_empresarial" value="empresarial" type="radio"> <label for="evento_empresarial">Empresarial</label>
<input name="evento" id="evento_particular" value="particular" type="radio"> <label for="evento_particular">Particular</label>
if ( $('#comments').val().trim() == '' )