如果#category字段为空,我正在尝试使下拉列表需要填写。如果字段为空,则需要Jquery验证下拉列表
谢谢!
JQUERY ATTEMPT#1:
$("#uploadDocsForm").validate({
rules: {
name: {
required: true,
minlength: 2,
maxlength: 255
},
cat_id: {
required: function(element) {
return $("#category").val() == '';
}
}
},
messages: {
name: 'Please enter a <b>Document Name</b>.',
cat_id: 'Please select a <b>Category</b>.'
}
});
JQUERY ATTEMPT#2:
$("#uploadDocsForm").validate({
rules: {
name: {
required: true,
minlength: 2,
maxlength: 255
},
cat_id: {
required: {
depends: function(element) {
return $("#category").val() == '';
}
}
}
},
messages: {
name: 'Please enter a <b>Document Name</b>.',
cat_id: 'Please select a <b>Category</b>.'
}
});
HTML:
<form name="uploadDocsForm" id="uploadDocsForm">
<label for="name">Document Name</label>
<input name="name" id="name" type="text" class="textbox"/>
<label for="cat_id">Category</label>
<select name="cat_id" id="cat_id" class="dropdown">
<option selected>Please Select Category</option>
<option>------------------------</option>
<option value="1">test cat</option>
</select>
<label for="category">New Category</label>
<input name="category" id="category" type="text" class="textbox"/>
</form>
它似乎并没有正常工作。我想这也:CAT_ID:{ \t要求:{ \t \t取决于:!功能(元素){ \t \t \t回报($( “#类”)VAL()= '' && $(元素) .val()!=''); \t \t} \t}} 您 – 2011-05-11 14:07:36
建议没有触发现有的错误(如果名称是空的),但是当我增加了“要求”部分仍引发的名字错误,但没有写的CAT_ID任何消息。这似乎是“工作”,但错误消息被抑制。 – 2011-05-11 14:10:15
@Stephen我已根据[rules]部分中的[this source](http://docs.jquery.com/Plugins/Validation/validate)更正了代码。如果它仍然不起作用,请为我们设置一个jsFiddle以便使用,因为这应该起作用。换句话说,你的第二次尝试看起来是正确的,如果这不工作,建立一个jsFiddle。 – Chad 2011-05-11 15:16:06