如题,以前用传统的js方法很好控制,就是修改textarea元素的scrollTop属性即可,但在razor文件里不用JavaScript应该怎样才能实现相同的效果(获取页面元素并控制滚动)?
1条回答 默认 最新
- CSDN专家-showbo 2021-07-24 07:03关注
没提供api获取dom,但是可以调用写好的js方法,实际也是生成js代码发送到客户端执行的,这个是b/s模式的限制。有帮助麻烦点个采纳【本回答右上角】,谢谢~~
[_Host.cshtml/index.html]
- <script>
- function accessDOMElement() {
- var btn;
- // access DOM here
- btn = document.getElementById('btn');
- btn.innerText = "Button Textchanged";
- }
- </script>
[index.razor]
- @page "/"
- @inject IJSRuntime jsRuntime
- <h1>@Title</h1>
- <button id="btn" @onclick="UpdateTitle">Update Title</button>
- @code {
- private string Title { get; set; } = "Hello, World!";
- private async void UpdateTitle()
- {
- await jsRuntime.InvokeAsync<object>("accessDOMElement");
- Title = "Hello, Blazor!";
- }
- }
代码来源:https://www.syncfusion.com/faq/blazor/javascript-interop/is-there-a-way-to-access-dom-in-blazor
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报