单击 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>
<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/
所以我有一个 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>
<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/