【问题标题】:Using Jquery to change passord input type, but site will not apply remembered password使用 Jquery 更改密码输入类型,但网站不会应用记住的密码
【发布时间】:2011-12-25 18:30:45
【问题描述】:

这是 Jquery:

$(document).ready(function() {
    $('#user_pass').one('focus',function() {
        $('#userpasscont').html('<input type="password" value="" id="user_pass" class="text" name="pwd">');
        $('#user_pass').focus();
    })
    $('#user_login').one('focus',function() {
        $('#user_login').val('');
    })
});

这是表格:

<p><input type="text" id="user_login" class="text" value="Username" name="log"></p>
<span id="userpasscont"> <input type="text" value="Password" id="user_pass" class="text" name="pwd"></span>

它很好用,只是我不知道如何将保存的密码传递给它。

【问题讨论】:

  • 您是否出于某种原因试图显示密码?
  • 保存的密码从哪里来?我在上面的代码中没有看到任何看起来像持久数据的东西。
  • 我的意思是浏览器保存的密码列表中的密码

标签: jquery forms passwords


【解决方案1】:

这里是在 DOM 完成加载后替换输入,这就是它不提供记住密码的原因:

$('#userpasscont').html('<input type="password" value="" id="user_pass" class="text" name="pwd">');

你可以通过这行来改变这行代码:

if($('#user_pass').attr('value')='Password'){$('#user_pass').attr('value', '')}

【讨论】:

  • 我看不出这有什么帮助。我必须首先将该字段设置为普通文本字段,以便“密码”一词可见,然后将其更改为密码字段。另外,如果是密码字段,浏览器不会让我更改字段的类型。
【解决方案2】:

Web 服务器技术不应传递已保存的密码。即使它传递了已保存密码的值,您也不应该看到它。最好的选择是,将这些框留空,让用户根据需要输入一些内容。

如果用户提交新信息,那么如果他们提交这些字段,您就会知道发生了什么。

【讨论】:

  • 我同意,但是,这是一个请求,所以我正在努力使其工作。
  • 然后可能想尝试重命名该字段。尝试此操作会有问题,因为密码通常是某种类型的保留字(从日志中清除,在编辑时不会返回屏幕等。将其重命名为其他名称,它应该会使您的工作更轻松。另外,通常如果我有这样的请求进来,我会解释安全隐患,他们通常可以接受替代。
猜你喜欢
  • 1970-01-01
  • 2014-12-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-06-07
  • 2011-12-09
  • 1970-01-01
  • 2012-01-22
相关资源
最近更新 更多