2011-06-12 126 views
1

我在我的网站上有简单的登录表单。在给定的要求中,该密码不能发送到服务器,而只能发送到MD5哈希。我采取了简单的MD5功能,现在,当点击提交按钮时,我将密码中的隐藏文本更改为md5(密码)。这工作正常,但用户看到,他的密码正在发生。我想使它透明,并用onPost(或像这样的smth)回调来动态改变这个特定部分的形式。更改信息表格

我找不到任何教程如何处理在javascript(jquery?)中操作POST表/表单/窗体,所以如果有人可以帮助,我将不胜感激。

+0

怎么做用户看看它是不是一个隐藏的领域? – 2011-06-12 09:56:02

+0

我的意思是hidden =用户看不到纯文本,只是隐藏(type = password) – 2011-06-12 13:58:49

回答

5

据我所知输入字段没有name不提交到服务器。所以,你可以有一个隐藏的领域和形式的onsubmit事件通过应用MD5校验密码字段的值复制到隐藏字段:

<form method="post" action="/login"> 
    <input type="password" id="password" /> 
    <input type="hidden" name="password" id="hiddenpassword" /> 
    <input type="submit" value="Login" /> 
</form> 

然后:

$('form').submit(function() { 
    var password = $('#password').val(); 
    var md5 = MD5(password); 
    $('#hiddenpassword').val(md5); 
    return true; 
}); 
+1

请将'#'添加到'hiddenpassword'选择器。否则公司+1 – mkilmanas 2011-06-12 10:35:50

+0

@mkilmanas,完成,谢谢你指出这一点。 – 2011-06-12 10:49:31