首页 > 解决方案 > 将递增的 ID 连接到 @DropDownListFor id 值

问题描述

我正在尝试将动态数字 ID 值连接到我认为的@DropDownListForHTMLHelper Id

@for (int i = 0; i < Model.AttributeValueList.Count(); i++)
{    
 ... Other code here 
<tr>
    <td class="DisplayFieldName">
        @Html.LabelFor(m => m.AttributeValueList[i].ListingTypeID)
    </td>
    <td class="DisplayFieldData" style="padding: 0px 0px 0px 5px;">
        @Html.DropDownListFor(m => m.AttributeValueList[i].ListingTypeID, Model.AttributeValueList[i].ListingTypes, new { @id = "listDropdown", @Name = "ListingTypeID", style = "width:207px;font-size:10pt;" })            
    </td>
</tr>
}

我可以像这样将它添加到常规 HTML 中。

<tr class="@("listingOption-" + Model.AttributeValueList[i].ItemReschedualeOptionID)">

但是当我尝试将它与 HtmlHelper 内联添加时,它会出错。也许我没有正确的语法。

@Html.DropDownListFor(m => m.AttributeValueList[i].ListingTypeID, Model.AttributeValueList[i].ListingTypes, new { @id = "listDropdown-" + ADD ID HERE, @Name = "ListingTypeID", style = "width:207px;font-size:10pt;" })

我查看了其他 SO 帖子,但似乎没有任何效果。

这是我尝试过的。

@id = "listDropdown-" + Model.AttributeValueList[i].ItemReschedualeOptionID,
@id = "@("listDropdown-"Model.AttributeValueList[i].ItemReschedualeOptionID)",
@id = "listDropdown-@(Model.AttributeValueList[i].ItemReschedualeOptionID)",

标签: c#asp.netasp.net-mvc-3razor

解决方案


这是连接到 HTMLHelpers 中的值的正确语法

@id = "listDropdown-"+@Model.AttributeValueList[i].ItemReschedualeOptionID,

推荐阅读