javascript - 如何在发布 html 表单时进行 Base64 编码?

标签 javascript c# jquery html forms

我陷入了一个困境,在 cshtml 页面中发布表单时,我需要将发布的 URL 编码为 Base64。我们在表单元素中确实有 enctype 属性,我们可以在其中获得 3 种编码,但是由于某些客户端要求,我们需要将 URL 编码为 Base64。以下是表单元素:

<body onload="document.getElementById('idPost').submit()">
    <form id="idPost" method="post" action= @System.Configuration.ConfigurationManager.AppSettings["postUrl"]
        style="margin: 0; padding: 0;">
        <fieldset style="border: 0">
            <h3 style="text-align: center;">We Are Signing You In, Please Wait...</h3>

            @Html.HiddenFor(model => model.agent);
             @Html.HiddenFor(model => model.User_ID);
            @Html.HiddenFor(model => model.Password);
            @Html.HiddenFor(model => model.errorUrl);
            @Html.HiddenFor(model => model.originalResourceUri);

        </fieldset>
    </form>
</body>

任何帮助完成这项工作的人将不胜感激。

最佳答案

将隐藏字段转换为 Base 64 字符串

 @Html.HiddenFor(model => Convert.ToBase64String(Encoding.UTF8.GetBytes(model.agent)));

您可以为其创建扩展方法并执行类似的操作

@Html.HiddenFor(model => model.agent.ToBase64())

关于javascript - 如何在发布 html 表单时进行 Base64 编码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44427480/

相关文章:

javascript - 如何更改克隆div中的img src?

JavaScript JQuery 隐藏/显示功能

javascript - 可以在 Javascript 代码中使用 setter 和 getter 吗?

c# - FixDocument 作为报告引擎?

c# - 如何将二进制文件转换为字节数组?

c# - 我可以在 javascript 中使用 resolveurl

JavaScript- 在页面中查找文本并跳转到页面中的位置

javascript - 如何使用js更改超过阈值长度的文本颜色

Javascript,扩展ES6类setter会继承getter

javascript - 处理从 Angular $q.all 返回的结果