【发布时间】:2012-10-26 02:05:46
【问题描述】:
我的网站上有很多不同的表格。我想使用 Jquery 来:
- 如果任何文本字段为空,则显示错误消息
- 使用 CSS 突出显示空白字段
- 在用户填写之前阻止提交表单。
所有不同的表单都链接到同一个 Jquery 脚本,因此我必须确保我的 jquery 不会对特定表单进行任何引用(否则,我将不得不为每个表单编写不同的脚本)。
我认为最好的方法是使用each function 循环输入字段以检查它们是否为空白,然后使用event.preventDefault(); 阻止表单提交并使用addClass 突出显示字段.
每个功能都有效,但 preventdefault/addclass 似乎不起作用。我不确定我做错了什么。这是我的代码:(JSFiddle 版本)
$(document).ready(function () {
$('.names').submit(function(){
$('.names input[type=text]').each(function(n,element){
if ($(element).val()=='') {
event.preventDefault();
alert('Some fields are blank (highlighted in red). Please fill them in');
($element).addClass("error");
return false;
}
});
return true;
});
});
我怎样才能让它工作?是否可以将错误类应用于输入字段的父 <p> 标签而不是字段本身?
【问题讨论】:
-
您所做的几乎所有事情都可以使用 jQuery.validate 插件完成,为什么要重新发明轮子?
标签: javascript jquery forms