【发布时间】:2011-04-11 17:48:45
【问题描述】:
我正在使用一个生成 HTML 表单的应用程序,其中包含用于客户端验证的自定义属性。用于验证的错误消息包含在 error 属性中,用于验证输入的表达式包含在 expression 属性中。
我有以下 javascript 块,
$(document).ready(function() {
$("input[expression]").blur(function() {
var inputs = $(":input[expression]");
inputs.each(function(index){
var input = inputs[index];
var expression = $(this).attr('expression');
if(!$(this).val().match(expression))
{
var error = $(this).attr("error");
$(this).attr("title",error);
$(this).tooltip({ position: "center right", opacity: 0.7});
$(this).tooltip().show();
}
else
{
}
});
});
});
我试图做的是设置所有具有 表达式 属性的字段,以在输入框失去焦点时根据当前值验证它们的表达式值。
这在某种程度上是可行的,但不是我希望它具有的行为。
现在,当我单击输入元素时,会弹出工具提示错误消息。我不想要这个,我只希望它在运行 blur() 回调函数后显示错误消息。
有没有正确的方法来做到这一点?
下面显示了我的标记的示例
<input type='text' name='firstName' expression='[a-zA-Z]' error='Please Enter First Name'/>
【问题讨论】:
标签: jquery jquery-plugins jquery-tools