2011-08-31 46 views
2

combox我在MVC3应用程序中使用不显眼的验证。我有一个下拉列表,其中有一个[必需的]验证器。这是我的模型(简体):MVC3 - 在JQuery UI上触发不显眼的JavaScript自动完成下拉

[Required(ErrorMessage = "Please select From Employee.")] 
public string CurrentEmpId { get; set; }  

public List<SelectListItem> CurrentEmp { get; set; } 

这是我的看法(简体):

@Html.LabelFor(m => m.CurrentAdvisers) 
@Html.DropDownListFor(m => m.CurrentEmpId, new SelectList(Model.CurrentEmp, "Value", "Text", Model.CurrentEmpId), "Please Select") 
@Html.ValidationMessageFor(m => m.CurrentEmpId) 

现在,这是所有工作的博diddly,直到我做了下拉列表到一个jQuery UI COMBOX jqueryui.com/demos/autocomplete/#combobox (见最后一个参数)。

@Html.DropDownListFor(m => m.CurrentEmpId, new SelectList(Model.CurrentEmp, "Value", "Text", Model.CurrentEmpId), "Please Select", new { @class = "selAutoComplete" }) 

验证火灾OK,当我按下提交按钮,一切都没有被选中。有一件烦人的事情,虽然不起作用。当发生错误时,如果我然后通过选择下拉列表中的某些内容并更正错误,则该错误不会消失。这确实发生在一个正常的选择框中。

这可能与<select>现在被隐藏并被JQuery替换为<input>这一事实有关,但我无法弄清楚如何触发正确的js以删除错误消息。

任何帮助将受到感谢!

在此先感谢

+0

你如何在'