【发布时间】:2012-01-05 00:54:22
【问题描述】:
我正在尝试通过标准 MVC3 模板附带的标准帐户控制器代码设置配置文件属性 (ComplexID)。当从自动完成中选择一个值时,我正在使用 jquery 库中的自动完成小部件来设置隐藏字段的值。 setter 由我添加的警报确认,但是当我尝试保存文本框值时,我从 Model.IsValid 收到错误,说需要设置 ComplexID。在 Account Model 中,我将 ComplexID 字段设置为 [Required]。我究竟做错了什么?谢谢
<div>
<input type="text" name="q" id="complexes" />
@Html.HiddenFor(m => m.ComplexID, new { id="complexid"})
</div>
Jscript 是:
$("#complexes").autocomplete({
source: function(request, response) {
$.ajax({
url: "/Account/QuickSearch", type: "POST", dataType: "json",
data: { query: request.term },
success: function(data) {
response($.map(data, function(item) {
return { label: item.Name + " , " + item.Address1, value: item.Name, id: item.ComplexID };
}))
}
})
},
minLength: 3,
select: function(event, ui) {
var selecteditem = ui.item;
$("#complexid").text(selecteditem.id);
alert(ui.item ? ("You picked '" + selecteditem.label + "' and the hidden textbox now has a value of " + $("#complexid").text()) : "Nothing selected");
}
});
【问题讨论】:
标签: asp.net-mvc-3 jquery-ui jquery autocomplete