Javascript 如何显示<;span>;或<;部门>;将内容标记为星号(*)

Javascript 如何显示<;span>;或<;部门>;将内容标记为星号(*),javascript,jquery,html,css,Javascript,Jquery,Html,Css,我将显示用户的当前密码,如 Current Password : ****** 我想要星号(*)的确切数字作为密码字符数。此外,它应该是安全的,它不应该在视图源中可见。有jQuery插件可用吗?或者我们可以通过JavaScript实现吗?您说您正在检索密码,所以请使用 <input type="password" /> 如果您对样式不满意,可以使用css删除边框。您可以从后端获取密码长度(计数),并通过简单循环将*显示为该计数,并将字符串设置为div(使用innerHTML)

我将显示用户的当前密码,如

Current Password : ******

我想要星号(*)的确切数字作为密码字符数。此外,它应该是安全的,它不应该在视图源中可见。有jQuery插件可用吗?或者我们可以通过JavaScript实现吗?

您说您正在检索密码,所以请使用

<input type="password" />


如果您对样式不满意,可以使用css删除边框。

您可以从后端获取密码长度(计数),并通过简单循环将*显示为该计数,并将字符串设置为div(使用innerHTML)。没有人得到您的实际密码,但可能是计数

编辑:

string pass='';
字符串passcount=10//我不懂你的语言

对于(int i=0;i我已经表达了我的反对和警告……因此,尽管如此,只需计算密码中的字符数,并响应视图中的许多字符即可。不需要Javascript。

我不知道您使用的是什么编程语言,但如果它类似于ASP.NET,我建议使用代码隐藏来获取字符串的长度,然后将密码设置为星号,然后再将其发送到客户端页面

在客户端页面的相关位置执行此操作:

string displayPassword = string.Empty;
for(int i = 0; i < thePassword.Length; i++)
   displayPassword += "*";
string displayPassword=string.Empty;
for(int i=0;i
然后在页面上公开“displayPassword”变量,而不是实际密码

我认为你正在尝试做的事情可能有点不对劲,实际上你不应该能够解密密码(散列是最好的),而且在隐藏密码的同时向用户显示密码中的字符数似乎有点冲突

  • 使用无边框且只读的
  • 使用javascript。如果您的DIV id为“password”,请使用以下脚本:

    var password = <your password here>
    var dispPassword = new String();
    var n = password.length;
    while(dispPassword.length < n){ 
            dispPassword.push("*"); 
    }
    document.getElementById("password").innerHTML = dispPassword;
    
    var密码=
    var dispPassword=新字符串();
    var n=password.length;
    而(dispPassword.length
  • 注意:显示密码根本不是一个好的做法。用户可以通过查看页面的源来查看密码,密码的用途也会丢失。
    实际上,在数据库中以明文形式保存密码是不安全的。它应该被加密(散列).

    从技术上讲,你不应该显示密码,因为这意味着你知道密码是什么……你应该在将密码放入存储器之前进行哈希运算,永远不知道密码是什么,只知道哈希和salt是什么……是的,但我说的是哈希值不会与密码的字符数相同,而且用户不知道散列是什么,只知道实际密码是什么。所以*的数字没有意义,因为它们是散列中的字符数…而不是用户的实际密码。@Rajasekar请听@prodigitalson.hash!Salt!你可以在散列之前存储密码长度,然后用它作为字符串长度填充
    *
    。但你也不应该这样做。@Rajasekar如果你能够检索到用户的当前密码,那么你的系统设计就很糟糕。即使是这样,你也不应该真正这样做,也不应该给他们任何关于内容、长度的信息。你将pass初始化为空字符串,然后然后在for循环中使用pass.length?pass不会总是“*”?您的版本更干净。
    var password = <your password here>
    var dispPassword = new String();
    var n = password.length;
    while(dispPassword.length < n){ 
            dispPassword.push("*"); 
    }
    document.getElementById("password").innerHTML = dispPassword;