首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么SelectList在提交post时返回模型中的空值?

为什么SelectList在提交post时返回模型中的空值?
EN

Stack Overflow用户
提问于 2021-05-17 17:01:34
回答 3查看 145关注 0票数 0

我正在尝试使用Html helper提交一个表单,如下所示:

代码语言:javascript
复制
 @using (Html.BeginForm("Create", "Certificate", FormMethod.Post, new { enctype = "multipart/form-data", id = "complianceCertificate" }))

在页面的加载中,我使用HTML helper绑定下拉菜单,如下所示

代码语言:javascript
复制
@Html.DropDownListFor(model => model._DetailsOfOwner.Id, Model._DetailsOfOwner.Practices, "Select licensee name...", new { @class = "form-control tx-13 pd-2 has-check-valid", @name = "LicenseeId" })
                                @Html.ValidationMessageFor(model => model._DetailsOfOwner.Practices, "", new { @class = "text-danger has-error-valid" })

它已正确加载

问题出在提交表单的时候。它在SelectList的模型中传递null值。

这是我的类,选择列表位于其中

代码语言:javascript
复制
public class _DetailsOfOwnerViewModel : BaseAddress
{
    public int Id { get; set; }
    public SelectList Practices { get; set; }
    public string LicenseeName { get; set; }
    public string RMLNo { get; set; }
    public string ContactPerson { get; set; }
    public string Telephone { get; set; }
    public string Email { get; set; }
}

谢谢你。

EN

回答 3

Stack Overflow用户

发布于 2021-05-17 21:57:17

您不能返回完整的SelectList,您需要从将返回到服务器的下拉列表中选择一个值。你应该改变你的模型。

切换此选项

代码语言:javascript
复制
public SelectList Practices { get; set; }

到这个

代码语言:javascript
复制
public string Practices { get; set; }
票数 1
EN

Stack Overflow用户

发布于 2021-05-17 17:13:11

当选择一个项目时,下拉列表映射到单个值,而不是一组值,因此模型在提交时不会被正确绑定。尝试将Practicies的类型更改为int或string。

票数 0
EN

Stack Overflow用户

发布于 2021-05-26 12:28:43

在这里,您正在绑定模型对象的下拉列表,这可能就是您将SelectList作为practices属性的原因。但是,当您使用post方法接收表单数据时,您在下拉列表中只选择了一个值,因此需要int或string。因此,有两种方法可以修复它:

使用ViewBag绑定下拉菜单,您将在其中分配列表并替换

公共SelectList实践{get;set;}

公共字符串实践{get;set;}

并使用model._DetailsOfOwner.Practices属性而不是model._DetailsOfOwner.Id来绑定dropdown。

或者另一种方式是

您正在绑定下拉列表中的model._DetailsOfOwner.Id,因此您可以简单地从该属性中获取所选值。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67566789

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档