加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 如何覆盖选择下拉列表的名称和id属性

发布时间:2020-12-15 22:01:43 所属栏目:百科 来源:网络整理
导读:如何覆盖 HTML选择下拉列表的id和name属性? 我的HTML中有以下标记来生成选择下拉列表: @Html.DropDownListFor( m = m.CountryId,new SelectList(Model.Countries,"Id","Name",Model.CountryId),"-- Select --",new { @class = "form-control" }) 上面代码
如何覆盖 HTML选择下拉列表的id和name属性?

我的HTML中有以下标记来生成选择下拉列表:

@Html.DropDownListFor(
     m => m.CountryId,new SelectList(Model.Countries,"Id","Name",Model.CountryId),"-- Select --",new { @class = "form-control" }
)

上面代码的输出如下所示:

<select name="CountryId" id="CountryId" data-val-required="Country is required" data-val-number="The field CountryId must be a number." data-val="true" class="form-control">
     <option value="">-- Select --</option>
     <option value="1">Country 1</option>
     <option value="2">Country 2</option>
     <option value="3">Country 3</option>
     <option value="4">Country 4</option>
</select>

我看到它使name和id属性都等于CountryId.我喜欢我的标记更具描述性的名称,比如国家.而且我也希望我的名字和id属性具有相同的描述/名称.所以我尝试了以下方法:

@Html.DropDownListFor(
     m => m.CountryId,new { id = "Countries",name = "Countries",@class = "form-control" }
)

上面代码的输出如下所示:

<select name="CountryId" id="Countries" data-val-required="Country is required" data-val-number="The field CountryId must be a number." data-val="true" class="form-control">
     <option value="">-- Select --</option>
     <option value="1">Country 1</option>
     <option value="2">Country 2</option>
     <option value="3">Country 3</option>
     <option value="4">Country 4</option>
</select>

为什么只有id属性更改为Countries并且名称保留在CountryId?

解决方法

情况就是这样,因为该属性需要大写(名称):

@Html.DropDownListFor(
     m => m.CountryId,Name = "Countries",@class = "form-control" }
)

这是一个类似问题的answer,引用了“Name”需要在评论中大写.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读