2016-06-09 35 views
2

我有一个表单的方法后,但我必须加密一些参数为md5之前,我发布在我的JavaScript。如何将值绑定到该表单。我如何绑定一个变量作为我在html中的输入值jquery

HTML表单:

<input id="sig" name="signature" >signature <i class="fa fa-usd" aria-hidden="true"> 
</i></br> 

的javascript:

vm.sig_md5 = $.md5('value'); 

回答

1

使用jQuery .submit()修改表单提交时的值(值在提交前被修改,然后继续提交)。

HTML:

<form action="somewhere.php" method="post"> 
    <input id="sig" name="signature" >signature <i class="fa fa-usd" aria-hidden="true"></i></br> 
</form> 

的jQuery/JavaScript的:

$(document).ready(function(){ 
    $('form').submit(function(){ 
     var sig = $('#sig').val(); 
     sig_md5 = $.md5(sig); 
     $('#sig').val(sig_md5); 
    }); 
}); 
+0

谢谢,这工作 – Pickles

0

使用Javascript:

<input id="sig" name="signature" >signature <i class="fa fa-usd" aria-hidden="true"> 

<script> 

    var vm = {}; 
    document.getElementById("sig").addEventListener("keyup", function(event) { 
     vm.sig_md5 = event.target.value; console.log(vm.sig_md5); 
    }); 

</script> 

你可以简单地附上keyup事件侦听器和设置您的变量它的价值。

+0

谢谢我会尝试一下。但是如果“签名”是一个隐藏的值,我还会包含事件侦听器吗? – Pickles

+0

还是我使用.bind? – Pickles

+0

我不确定它是否隐藏..但是我确定'.bind'也能正常工作,我在jsFiddle中测试了它,所以我使用了javascript,但是您不必这样做。 –

1

您可以使用getter,如果你不关心IE < = 9

var data = {} 
Object.defineProperty(data, 'signature', { 
    get: function() { return document.getElementById('sig').value; }, 
    set: function(value) { /* set input value hereif needed */ } 
}) 

read more对MDN

相关问题