2016-06-09 68 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

相關問題