Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/479.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript “如何加密或隐藏”;“价值”;在选择标记(HTML)的选项中-MVC 5_Javascript_Html_Encryption_Asp.net Mvc 5 - Fatal编程技术网

Javascript “如何加密或隐藏”;“价值”;在选择标记(HTML)的选项中-MVC 5

Javascript “如何加密或隐藏”;“价值”;在选择标记(HTML)的选项中-MVC 5,javascript,html,encryption,asp.net-mvc-5,Javascript,Html,Encryption,Asp.net Mvc 5,我正在将用户列表从控制器发送到视图 我的行动: public ActionResult Users() { ViewBag.UserList = new SelectList(db.Users.ToList(), "Id", "UserName"); return View(); } 我正在用以下内容填充下拉列表: @Html.DropDownList("Users", (SelectList)ViewBag.UserList, "Select

我正在将用户列表从控制器发送到视图

我的行动:

public ActionResult Users()
    {
        ViewBag.UserList = new SelectList(db.Users.ToList(), "Id", "UserName");
        return View();
    }
我正在用以下内容填充下拉列表:

 @Html.DropDownList("Users", (SelectList)ViewBag.UserList, "Select Users", new { @class = "required form-control" })
当我在chrome中打开developer tool时,我看到如下选项值:

<select class="required form-control" id="User_UserRole" name="Users" type="hidden">
<option value="">Select User</option>
<option value="3aeca037-99d1-4cb2-a08c-6a5a3427f35c">admin</option>
<option value="3df4ebc6-f7ee-44b9-9f0b-2083e5921aac">superadmin</option>
</select>

选择用户
管理
超级管理员
如何加密或隐藏此选项值
“value=“3aeca037-99d1-4cb2-a08c-6a5a3427f35c”

请帮助!

在浏览器中发生的任何事情都不能被认为是安全的或隐藏的

你想要的根本不可能

任何对安全敏感的操作都需要在服务器上进行。如果您想让用户在“管理员”和“超级管理员”之间进行选择,只需在下拉列表中为他们提供这些选项,然后在他们提交表单时,使用服务器端代码来决定您要做什么

如果不想让他们看到一个或多个选项,请不要为不想显示的项目生成
标记

此外,确保您不允许基于用户输入的服务器端的无效选项。例如,如果您只想允许“admin”,请确保如果他们手动创建“superadmin”选项并提交,您在服务器端拒绝此选项


来自外部世界的任何东西都不可信。

这样做可以隐藏选项值

<option value="k" style="display:none;">kumar</option>
库马尔
你到底为什么要这么做。你凭什么认为这与安全或使用安全有关(而且它已经是一个毫无意义的
Guid
)除非他在服务器端构建一些指向Guid的字典/链接,以便在回发过程中重新链接到Guid。正如其他用户所评论的,它不会提供额外的安全性,因为您在值上呈现的内容都会被代码理解,所以您只需更改值的显示,但其内部值保持不变,但是如果y您仍然希望实现这一点您可以使用tagbuilder和自定义属性来加密和解密值,我不确定它将如何提高安全性,如果您有用例,请告诉我。这隐藏了
本身(这是毫无意义的),而不是
(除非省略,否则无法完成-这也将使其变得毫无意义)感谢shankar的评论,但@StephenMuecke是正确的,因为我不想在
选项中透露
值,我认为这是不可能的!