获得所有必需输入的最佳方式

时间:2015-03-02 17:31:02

标签: javascript jquery html css validation

我有表单,其中存在少数必填字段 Example

    <div class="form-group">
            <label class="col-md-3 control-label" for="mpassword">Password<span class="required">                                       * </span></label>
            <div class="col-md-3">
                <input type="password" id="mpassword" name="mpassword" class="form-control" placeholder="Enter password"/> 
            </div> 
        </div>
        <div class="form-group">
            <label class="col-md-3 control-label" for="memail">Email <span class="required">* </span></label>
            <div class="col-md-3">
                <input type="email" id="memail" name="memail" class="form-control" placeholder="Enter email"/> 
            </div> 
        </div>
        <div class="form-group">
            <label class="col-md-3 control-label" for="mname">Full name<span class="required">* </span></label>
            <div class="col-md-3">
                <input type="text" id="mname" name="mname" class="form-control" placeholder="Enter name" value="MyName"/> 
            </div> 
        </div> 
       <div class="form-group">
            <label class="col-md-3 control-label" for="mname">Nick name</label>
            <div class="col-md-3">
                <input type="text" id="mname" name="mname" class="form-control" placeholder="Enter nickname"/> 
            </div> 
        </div> 

问题,我不知道获取所有必填字段的正确方法是什么,因为它们没有required属性或类。只有标签有required类,这意味着“此输入是必需的

2 个答案:

答案 0 :(得分:2)

只需定位标签,然后根据for属性

获取输入
$('label:has(.required)').map(function() {
    return $('#' + $(this).attr('for'));
});

请注意,其中两个表单元素具有相同的名称?

答案 1 :(得分:0)

$('.required').next().find('input').each(function() {
  // handle elements
});