无法使用 jQuery 验证多个 select 框
Unable to validate multiple select box using jQuery
我有一个多 select 框,用户应该在其中 select 至少 2 个值。
我使用 jQuery 和 Bootstrap。但是我没有得到任何结果。
我的 html 表单包含多个 select 框。该表格是使用 Twitter-Bootstrap 设计的。我写了一个 jQuery 函数来验证表单。我能够成功验证所有其他输入字段。
任何帮助。
HTML
<form>
<div class="form-group">
<label class="control-label" for="lastname">multiple:</label>
<div class="input-group">
<select data-placeholder="Add Invitees" name="invitees[]" multiple class="chosen-select" tabindex="8">
<option value="black">Black</option>
<option value="blue">Blue</option>
<option value="green">Green</option>
<option value="orange">Orange</option>
<option value="red">Red</option>
<option value="yellow">Yellow</option>
<option value="white">White</option>
</select>
</div>
</div>
<button type="submit" class="btn btn-primary">Submit</button>
</form>
jQuery
$('form').validate({
rules: {
invitees: {
minlength: 2,
required: true
}
},
highlight: function(element) {
$(element).closest('.form-group').addClass('has-error');
},
unhighlight: function(element) {
$(element).closest('.form-group').removeClass('has-error');
},
errorElement: 'span',
errorClass: 'help-block',
errorPlacement: function(error, element) {
if(element.parent('.input-group').length) {
error.insertAfter(element.parent());
} else {
error.insertAfter(element);
}
}
});
使用 'invitees[]'
而不是 invitees
查看更新的代码.. 检查这个 fiddle
$('form').validate({
rules: {
'invitees[]': {
minlength: 2,
required: true
}
},
highlight: function(element) {
$(element).closest('.form-group').addClass('has-error');
},
unhighlight: function(element) {
$(element).closest('.form-group').removeClass('has-error');
},
errorElement: 'span',
errorClass: 'help-block',
errorPlacement: function(error, element) {
if(element.parent('.input-group').length) {
error.insertAfter(element.parent());
} else {
error.insertAfter(element);
}
}
});
我有一个多 select 框,用户应该在其中 select 至少 2 个值。 我使用 jQuery 和 Bootstrap。但是我没有得到任何结果。
我的 html 表单包含多个 select 框。该表格是使用 Twitter-Bootstrap 设计的。我写了一个 jQuery 函数来验证表单。我能够成功验证所有其他输入字段。
任何帮助。
HTML
<form>
<div class="form-group">
<label class="control-label" for="lastname">multiple:</label>
<div class="input-group">
<select data-placeholder="Add Invitees" name="invitees[]" multiple class="chosen-select" tabindex="8">
<option value="black">Black</option>
<option value="blue">Blue</option>
<option value="green">Green</option>
<option value="orange">Orange</option>
<option value="red">Red</option>
<option value="yellow">Yellow</option>
<option value="white">White</option>
</select>
</div>
</div>
<button type="submit" class="btn btn-primary">Submit</button>
</form>
jQuery
$('form').validate({
rules: {
invitees: {
minlength: 2,
required: true
}
},
highlight: function(element) {
$(element).closest('.form-group').addClass('has-error');
},
unhighlight: function(element) {
$(element).closest('.form-group').removeClass('has-error');
},
errorElement: 'span',
errorClass: 'help-block',
errorPlacement: function(error, element) {
if(element.parent('.input-group').length) {
error.insertAfter(element.parent());
} else {
error.insertAfter(element);
}
}
});
使用 'invitees[]'
而不是 invitees
查看更新的代码.. 检查这个 fiddle
$('form').validate({
rules: {
'invitees[]': {
minlength: 2,
required: true
}
},
highlight: function(element) {
$(element).closest('.form-group').addClass('has-error');
},
unhighlight: function(element) {
$(element).closest('.form-group').removeClass('has-error');
},
errorElement: 'span',
errorClass: 'help-block',
errorPlacement: function(error, element) {
if(element.parent('.input-group').length) {
error.insertAfter(element.parent());
} else {
error.insertAfter(element);
}
}
});