【问题标题】:Setting minimum password length设置最小密码长度
【发布时间】:2013-06-28 09:56:19
【问题描述】:

我正在尝试为登录页面设置最小密码长度;但是,密码(输入)标签的唯一属性似乎是 maxlength。我知道您可以使用新的模式或 min 属性,但我需要在 IE 9 中工作的东西。有没有简单/替换的方法来解决这个问题,还是我必须使用 strlen?

【问题讨论】:

  • @JonathandeM。如果 JS 被禁用了怎么办?
  • 使用js,但也要验证服务器端
  • 当有更简单的方法来解决这个问题时,我试图远离 javascript。
  • Javascript 对于这种事情是不安全的。仅用于客户端操作。

标签: php html internet-explorer passwords


【解决方案1】:
function CheckLength(name) {

            var password = document.getElementById(name).value;

            if (password.length < 4)

                alert('should have miniumum 4 chars');

        }
    </script>

</head>
<body>
    <form id="form1" runat="server">
    <input type="password" id="txtpassword" name="txtpassword" />
    <input type="submit" name="txtSubmit" onclick="CheckLength('txtpassword') " />

【讨论】:

  • 感谢您的回答。我想在 IE 9 及以下版本中唯一的方法是检查数组长度而不是在输入标签中检查它。
【解决方案2】:

一个班轮:

<input type="text" onKeyPress="return ( this.value.length < 10 );"/>

这可用于在 Internet Explorer 中实现 maxlength,但您也应该验证输入服务器端。

【讨论】:

    【解决方案3】:

    到目前为止,一些好的答案。

    然而,这更多的是服务器端而不是客户端。我不会很难“破解”标记或 Javascript 以允许使用短密码。

    您还应该经常检查服务器端,以确保没有发生任何奇怪的事情。

    总结一下:使用 Javascript 确保密码长度超过最小长度,并在服务器端重新检查以确保 jsfunction 没有被任何方式绕过。

    【讨论】:

    • 你也应该经常检查服务器端,以确保没有发生任何奇怪的事情。 +1
    【解决方案4】:

    你必须使用服务器端解决方案来解决这个问题,因为你永远不知道用户是否启用了 js..

    【讨论】:

    • 同时使用 js 以提高用户舒适度,并回退到服务器端。
    【解决方案5】:

    another question的回答,试试这个:

    <input pattern=".{3,}" required title="3 characters minimum">
    <input pattern=".{5,10}" required title="5 to 10 characters">
    

    【讨论】:

      猜你喜欢
      • 2016-03-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-18
      • 2016-07-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多