繁体   English   中英

如何在 ASP.NET Core 3.1 中隐藏 URL 参数

[英]How to hide URL parameters in ASP.NET Core 3.1

是否可以在 ASP.NET Core 3.1 中隐藏或删除 URL 参数?

示例操作链接

<a asp-controller="Example" asp-action="Test" asp-route-entityid="@Model.EntityID">Entity</a>

结果
https://localhost:44352/Example/Test?entityid=Entity

期望的结果
https://localhost:44352/Example/Test

您可以更改标签的默认行为,并在单击它时发送请求,但是! 将参数作为正文/数据而不是 URL 查询传递

Anchor Tag Helper将呈现为 HTML 锚<a... ></a>标记,通常它有助于通过查询字符串或路由数据传递数据。

为了满足您隐藏或删除 URL 参数的要求,您可以尝试使用表单和隐藏字段发布数据的以下解决方法。

<form id="form1" asp-controller="Example" asp-action="Test" >
    <input type="hidden" name="entityid" value="123" />
    <a id="a_formpost" asp-controller="Example" asp-action="Test">Entity</a>
</form>

点击<a>标签触发表单提交

<script>
    $(function () {
        $("#a_formpost").click(function (e) {
            e.preventDefault();

            $("#form1").submit();
        })
    })
</script>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM