[英]How to Select a default value from dropdown
現在,這需要用戶選擇下拉值之一。 如果當前值為空,如何將下拉選擇的值設置為已經為“ Rate1”? (模態加載時就是這樣)
最后,當模態加載選定的值時,將@class =“ form-control”的狀態設置為:@class =“ form-control edited”?
我將其作為查找填充,下拉菜單中包含4個比率:
case "BillingRates":
{
strArrays = new string[] { "Rate1", "Rate2", "Rate3", "Rate4" };
for (i = 0; i < (int)strArrays.Length; i++)
{
string str4 = strArrays[i];
lookups.Add(new Lookup()
{
Text = str4,
Value = str4,
TenantId = currentTenantId,
Selected = false,
Disabled = false,
Group = null,
AssociatedClass = string.Empty
});
}
break;
}
我還使用此foreach查找下拉列表的BillingRates:
foreach (Lookup lookupItem in (new LookupFill("BillingRates", num)).LookupItems)
{
SelectListItem selectListItem3 = new SelectListItem()
{
Text = lookupItem.Text,
Value = lookupItem.Value,
Disabled = lookupItem.Disabled,
Selected = lookupItem.Selected
};
selectListItems5.Add(selectListItem3);
}
SelectListItem selectListItem4 = new SelectListItem()
{
Text = "",
Value = "",
Disabled = false
};
然后在我的cshtml文件中有此變量:
var selectedBillingRate = string.Empty;
var BillingRates = ViewData["BillingRates"] as IEnumerable<SelectListItem>;
foreach (var item in BillingRates)
{
if (item.Value == Model.Invoice.BillingRate) { selectedBillingRate = item.Value; break; }
}
var BillingRateSelect = new SelectList(BillingRates, "Value", "Text");
var selectedBillingRate = '@Html.Raw(selectedBillingRate)';
$('#BillingRate').val(selectedBillingRate);
最后,我將其作為我的DropDownList:
@Html.DropDownList("BillingRate", BillingRateSelect, new { id = "BillingRate", required = "required", @class = "form-control" + (!string.IsNullOrEmpty(Model.Invoice.BillingRate) || !string.IsNullOrEmpty(selectedBillingRate) ? " edited" : "") })
我最終只是簡單地從上面替換了它: var selectedBillingRate = string.Empty;
這樣做: var selectedBillingRate = "Rate1";
它似乎按要求工作。
我意識到這可能不是最佳方法,而@StephenMueke的方法則是最佳方法,但是,我找不到合適的GET方法來預先設置BillingRate
的值。 我不好,還在學習。 再次感謝@StephenMuecke發表評論並帶領我進行進一步研究。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.