在 Blazor 中,我有一个同时具有 a和方法的<a>元素:hrefonclick
<a href="" onclick="@(() => ChangePage(_someObject))">Test</a>
onclick调用此方法:
private bool ChangePage(object objectToDisplay)
{
_currentObject = objectToDisplay;
StateHasChanged();
return false;
}
通常在 JavaScript 中,从事件方法返回 false 会停止后续导航到链接中的链接,href但这似乎不适用于我上面的代码。
单击链接后,如何停止 Blazor 将页面更改为根 URL?
(这里明显的答案是href完全删除,但我使用引导药丸中的链接并删除href药丸工作的停止)
我尝试过的其他没有用的方法:
- 将元素更改
<a>为跨度并设置data-target属性,但这会停止 Pills 正确呈现。 - 添加
return到onclick事件中(根据这个答案):onclick="return @(() => ChangePage(_overviewModel))"但这不会编译。 return在事件之后添加onclick:onclick="@(() => ChangePage(_overviewModel)); return false;"但这也不能编译。- 使用 Blazor
NavLink组件<NavLink href="" onclick="@(() => ChangePage(_someObject))">NavLink</NavLink>。这不起作用,请参阅此处了解更多信息。