单击 link 时如何渲染页面

How to RenderPage when clicked on a link

所以我有一个 div,其中我有一个 a 元素。我希望另一个 div 在另一个 div 中的 a 元素被单击后立即呈现另一个页面 (RenderPage)。

<div id="Left" style="width:29.49%; height:100%; border-style:solid; border-color:darkgray;">
    <h1 id="Pages"> Articles </h1><br />
    <a OnClick="LoadUE()">UE</a>
    &nbsp;&nbsp;<a></a>
    <script>
        function LoadUnity() {

        }
        function LoadUE() {
            document.getElementById("Body").innerHTML = @{RenderPage("Bottom.cshtml")};
        }
    </script>
</div>
<div id="Body" style="width:69.49%; height:100%;">

</div>

RenderPage方法仅在页面首次执行时在服务器上起作用。如果您想从客户端脚本加载 ASP.NET 网页(您正在使用的网页)中的部分内容,您应该从文件名中删除前导下划线,然后创建一个 AJAX 请求来加载它。这是一个使用 Fetch:

的示例
@section scripts{
    <script>
        function loadUE() {
            fetch('/bottom')
                .then((response) => {
                    return response.text();
                })
                .then((result) => {
                    document.getElementById('body').innerHTML = result;
                });
        });
    </script>
}

附带说明一下,ASP.NET 网页框架几乎已经死了。如果您只是在学习并且有选择,您应该改用 Razor Pages:https://www.learnrazorpages.com/