在我看来,我的代码如下所示。
@if (!Model.DisableBuyButton || !Model.DisableWishlistButton)
{
<div class="qutblk">
<span>@Html.LabelFor(model => model.EnteredQuantity, new { @class = "input-small" }, " :")</span>
@if (Model.AllowedQuantities.Count > 0)
{
@Html.DropDownListFor(model => model.EnteredQuantity, Model.AllowedQuantities, new { @class = "input-small" })
}
else
{
@Html.TextBoxFor(model => model.EnteredQuantity, new { @class = "input-small" })
}
} @Html.Widget("productdetails_add_info")
</div>
如果我ALLOWEDQUANTITIES.COUNT
更多,那么0.I
需要数量下拉列表。
例如,如果数量为5,我的下拉列表中需要1,2,3,4,5
个数字。如果数量为7,我的下拉列表中需要1,2,3,4,5,6,7
个数字。
但是我的问题是我无法在下拉列表中绑定数字这样的数据,这意味着如果数量为5,则只显示下拉列表中的5个数字,而不显示1,2,3,4,5
。
答案 0 :(得分:2)
您可以尝试这样的事情:
public static class MyLists
{
public static List<SelectListItem> GetList()
{
List<SelectListItem> result = new List<SelectListItem>(int AllowedQuantities)
for(int i = 0; i < AllowedQuantities; i++)
{
var number = i + 1;
var item = new SelectListItem {text = number.ToString(), value = number.ToString()};
result.Add(item);
}
return result
}
}
在您看来:
@Html.DropDownListFor(model => model.EnteredQuantity, MyLists.GetList(model.EnteredQuantity), new { @class = "input-small" })