我得到了这个选择与一组元素,一个元素是一个描述和一个名称。
我想要得到
参数。名称和元素。名称
当选择有变化时。如果我只是使用SelectValueChange,我只是得到元素。名字,但这对我的帮助还不够。什么好主意吗?
<select class="form-control" @onchange="SelectValueChange">
@foreach (Element element in parameter.Domain.Elements)
{
<option value=@element.Name>@element.Description</option>
}
</select>
@code
{
public void SelectValueChange(ChangeEventArgs e)
{
//how to know what select this is comming from
need to know the parameter.Name value here.
}
}
您不能绑定到对象,这意味着您不能绑定到像这样的元素对象:value=@element
。您只能绑定到字符串值。
您可以绑定element.Name
,它是字符串,像这样:
<option value="element.Name">@element.Description</option>
你的SelectValueChange可能看起来像这样:
private void SelectValueChange (ChangeEventArags args)
{
var selectedName = args.Value.ToString();
}
参数。名称和元素。名称
你说parameter.Name
是什么意思?
请显示更多的代码,如果你还需要帮助…
更新我可以绑定到元素。名字但是我需要知道这个select的"name"。因为我写了50页。所以我需要知道调用来自哪个select。-
我不确定我是否理解你…您的意思是,您的页面上有50个选择元素与一个单一的SelectValueChange方法,你想知道从哪个选择元素你的SelectValueChange方法被调用?如果是这样,最简单的方法是添加标识select元素的另一个参数。它可以通过多种方式实现……我想最简单的方法如下:
@onchange="@((ChangedEventArgs args) => SelectValueChange(args, "Select1"))"
你的SelectValueChange可能看起来像这样:
private void SelectValueChange (ChangeEventArags args, string selectName)
{
var selectedName = args.Value.ToString();
}