Blazor InputSelect绑定到选项文本而不是值
我使用Blazor服务器端,我有:Blazor InputSelect绑定到选项文本而不是值,blazor,blazor-server-side,Blazor,Blazor Server Side,我使用Blazor服务器端,我有: <InputSelect class="form-control" id="sYear" @bind-Value="@SelectedYear"> <option value="" selected="@(SelectedYear == "")">Year</option> @foreach (int i in Enumerable.Range(admin.GetYearOfGregorianDate(Dat
<InputSelect class="form-control" id="sYear" @bind-Value="@SelectedYear">
<option value="" selected="@(SelectedYear == "")">Year</option>
@foreach (int i in Enumerable.Range(admin.GetYearOfGregorianDate(DateTime.Now) - 20, 21).Reverse())
{
<option value="@i" selected="@(SelectedYear == i.ToString())">@i.ToString()</option>
}
</InputSelect>
年
@foreach(Enumerable.Range(admin.GetYearOfGregorianDate(DateTime.Now)-20,21.Reverse()中的int i)
{
@i、 ToString()
}
如图所示,第一个选项的值为空,我希望当我选择第一个选项时,绑定值变为空字符串,而不是字符串“Year”,但SelectedYear设置为“Year”!
如何解决此问题?只需删除所选标记即可? 为什么要使用选定的标记? 默认情况下,SelectedYear的值绑定到选项值
<InputSelect class="form-control" id="sYear" @bind-Value="@SelectedYear">
<option value="">Year</option>
@foreach (int i in Enumerable.Range(admin.GetYearOfGregorianDate(DateTime.Now) - 20, 21).Reverse())
{
<option value="@i">@i.ToString()</option>
}
</InputSelect>
年
@foreach(Enumerable.Range(admin.GetYearOfGregorianDate(DateTime.Now)-20,21.Reverse()中的int i)
{
@i、 ToString()
}