DropDownlistFor默认为null值

时间:2014-06-23 12:05:30

标签: asp.net

下面的代码显示了一个带有类别的下拉列表和一个用于创建新类别的empy文本框。他们都是"目标"相同的属性,我希望以下sceanrio: 如果用户未在dropdownlistfor中进行选择,则应将textboxfor中的值传递给控制器​​。

我现在的问题是,默认情况下,下拉列表中始终会选择一个值。有没有办法让这样的默认值---选择类别---,其值为null并且不会传递给控制器​​?

 @using (Html.BeginForm("SaveCategory", "Home", FormMethod.Post))
                                    {
                                        <div class="col-md-3">
                                            @Html.HiddenFor(o => o.Id)
                                            <p>Choose existing category</p>
                                            @Html.DropDownListFor(model => model.ChoosenCategory,
                                                Model.Category.ListOfCategories.Select(kat => new SelectListItem { Text = kat, Value = kat }))
                                        </div>
                                        <div class="col-md-3">
                                            <p>Create new category</p>
                                            @Html.TextBoxFor(o => o.BlogComment.ComBody, new { @class = "form-control", placeholder = "Add new category" })
                                        </div>
                                        <div class="col-md-3">
                                            <button type="submit" name="xid" class="btn btn-secondary" style="margin-top: 30px;">Save Category</button>
                                        </div>
                                        <div style="float: none;clear: both"></div>
                                    }

1 个答案:

答案 0 :(得分:1)

将此属性设置为下拉列表-- Select Category --

这样的事情:

@Html.DropDownListFor(model => model.ChoosenCategory, Model.Category.ListOfCategories.Select(kat => new SelectListItem { Text = kat, Value = kat }), "-- Select Category --")

让我知道它是否适合你。