我正在使用找到here
的ajaxForm插件现在我有一个表单,用户名& 密码
我的要求是将密码字段的值更改为 md5 ,以便我使用找到的插件here
所以我这样使用:
$('myForm').ajaxForm({
url : 'pathtosend',
type : 'post',
beforeSubmit : function(arr, $form, options){
$('#password').val($.md5($('#password').val()));
},
success : function(response, statusText, xhr, $form){
alert('blah blah');
}
});
现在,当我在 java servlet代码中打印密码的值时,它会显示我传递的那个,而不是像我那样显示值的md5。
当我将编码更改为单击提交按钮并操纵提交已完成时,我的问题是当数据更改时 beforeSubmit 的重要性是什么不会在提交
中反映答案 0 :(得分:18)
您需要将beforeSubmit功能更改为:
beforeSubmit : function(arr, $form, options){
arr.push({name:'hashed-password', value:$.md5($('#password').val())})
},
然后您可以访问servlet中的hashed-password变量。
原因是文本输入的值已经由AjaxForm处理并存储在arr数组中。
修改:如果您不想发送明文密码,可以使用原始方法,但将beforeSubmit : function(arr, $form, options){
更改为beforeSerialize : function() {