validate.js requires a "name" in the tag when you use jqueryui autocomplete combobox. The generated code has no id and name attributes, so you need to add them as needed.
In the _create function for combobox you need to add:
select = this.element.hide(), select_id = select.attr('id'), selected = select.children(":selected"),
and
input = $("<input>") .attr('id', select_id + '_combobox') .attr('name', select_id + '_combobox') .appendTo(wrapper)
This, given HTML as follows:
<select id="dropDownlist"> <option... </select>
autocomplete-combobox will generate the required input element with id and name attributes set to dropDownlist_combobox
with this I have full control over this auto-generated htmls tag from jqueryui-autocomplete-combobox. Then you can apply validation rules to the input element ( dropDownlist-combobox ). It will look something like this:
$('#dropDownlist_combobox').rules('add', { required: true, messages: { required: 'Please enter your combobox' } });
and voila :)
Using this, you will get an error message displayed between the input tag and the drop-down button. To fix this, you will need additional code:
$.validator.setDefaults({ errorPlacement: function (error, element) { if (element.context.id.indexOf('_combobox') == -1) error.insertAfter(element); else error.appendTo(element.parent()); } });
All code for the example is available at http://jsfiddle.net/XhU78/
I hope to work for you :)