检查是否需要字段?

Check if field is required?

我需要使用 jquery 在给定的表单中找到所有必填字段。我使用的是这种语法:

$('input[required],select[required]')

这是工作,但现在我开始使用 jQuery Validation Plugin。据我所知,插件不会向字段添加 'required' 属性,这就是为什么上面的脚本无法找到所需字段的原因。使用 jQuery 验证插件时是否可能需要 select 字段?

As I understood plugin would not add 'required' attribute to field, and thats why above script is failing to find required fields.

jQuery 验证插件不会动态添加或删除输入元素的属性。它只 adds/removes 一个 class 取决于字段是有效还是无效。

Is it possible select required field when using jQuery Validation Plugin?

不直接。当字段具有由插件设置声明的 "required" 规则时,输入没有任何独特之处。

但是,使用此插件,可以使用其他几种方法在字段上声明规则...下面仅举两个示例。

无需通过 .validate() 中的 rules 对象声明 required 规则,只需自己将 HTML5 required 属性添加到字段即可。 jQuery 验证插件将通过选取此 HTML5 属性并将 required 规则分配给字段进行验证来工作。

<input type="text" name="foo" required />

<input type="text" name="foo" required="required" />

并且您不需要在 select 中指定元素本身,或者,只需指定属性,就像这样...

$('[required]')

$('[required="required"]')

您还可以通过 class...

分配规则
<input type="text" name="bar" class="required" />

然后你可以很容易地 select 所有元素 class...

$('.required')

此演示展示了分配 required 规则的三种不同方式。

演示:jsfiddle.net/fg25jsw3/