Blazor数据列表的onchange事件未触发

3
在我的 Blazor Server / .NET Core 3.1 应用程序的 `.razor` 组件中,我已经在 datalist 中实现了一个 `onchange`。但是,当我从 datalist 中选择一个选项时,在浏览器中 `OnChanged` 方法不会触发。也就是说,我的断点没有被打到。
我希望它能够触发,然后使用 `OnChanged` 来填充 `

如果您使用lambda表达式,会怎样呢:@onchanged="e => OnChanged(e)" - agua from mars
@aguafrommars 你可以看一下enet的被采纳的答案,对我很有用。这个答案很有道理,因为它是输入发生变化。 (另外,我之前尝试过lambda但没有成功..)谢谢 - fourbeatcoder
1个回答

3

我认为应该是这样的:

<input @onchange="OnChanged" autoComplete="on" list="EventTypes" placeholder="Search event types..." />
<datalist id="EventTypes">
    @foreach (var eventType in EventTypes)
    {
        <option value="@eventType.Name">@eventType.Name</option>
    }
</datalist>

您也可以在输入元素上使用这种绑定形式:@bind="eventType.Name",而不是使用change事件。请注意,使用change事件不会实现双向绑定...

感谢您将@onchange属性从数据列表移动到输入框中。现在"OnChanged"事件已经触发并且能够命中我的断点。这让我非常高兴。 - fourbeatcoder

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接