我能够将一个 int 类型(它是 SelectedDiagnosisIdList 列表的第一个元素)变量绑定到 html 选择的选定元素:
<div>
<label>Diagnosis:</label>
<div>
<select @bind="@userInfo.SelectedDiagnosisIdList[0]">
@foreach (var item in diagnoses)
{
<option value="@item.Id">@item.Name</option>
}
</select>
<p>@userInfo.SelectedDiagnosisIdList[0]"</p>
</div>
</div>
@code
{
List<int> SelectedDiagnosisIdList = new List<int>() { 0 };
List<Diagnosis> diagnoses; // populated from db in OnInitializedAsync
}
Run Code Online (Sandbox Code Playgroud)
这很好用,当我在 UI 上更改选定的值时,段落的值会发生变化。
现在,我想添加更多 Diagnoses,因此我尝试维护更多 s 并向 SelectedDiagnosisIdList 添加更多元素:
<div>
<label>Diagnosis:</label>
<div>
@for(int i = 0; i < userInfo.SelectedDiagnosisIdList.Count; i++)
<select @bind="@userInfo.SelectedDiagnosisIdList[i]">
@foreach (var item in diagnoses)
{
<option value="@item.Id">@item.Name</option>
}
</select>
<p>@userInfo.SelectedDiagnosisIdList[i]</p>
}
</div>
</div> …Run Code Online (Sandbox Code Playgroud)