【问题标题】:Cannot set model MVC property无法设置模型 MVC 属性
【发布时间】: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


    【解决方案1】:

    改变这个:

    $("#complexid").text(selecteditem.id);
    

    $("#complexid").val(selecteditem.id);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-07-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-10-09
      • 2020-05-10
      相关资源
      最近更新 更多