[英]In React JS, how to get value from multiple input fields when one of them is changed
[英]Get rounded values in 2 input fields that update when one of them updates
我總共有3個輸入字段。
用戶在第一個輸入數字值。 現在,當用戶在第二個或第三個中輸入一個值時,無論哪個是其他更新(例如,如果是第二個,則更新第三個,如果是第三個,則更新第二個)。
第二個只是一個數字,第三個是相對於第一個輸入字段的相應變化百分比。
您將很容易在小提琴中看到我在說什么: https : //jsfiddle.net/1g570e7x/
但是,我想在輸入發生后立即舍入第二個和第三個輸入字段的值,然后像之前一樣更新相應的字段。
例如:用戶在第一個輸入中輸入了50,然后在第二個輸入中輸入了40,將其更改為40.00,將第三個字段更改為20.00。
這是HTML:
<input id="input1" type="number"/>Stock<br><br>
<label for="input2">Remainder</label>
<input id="input2" type="number"/><br>
<label for="input3">Percentage of loss</label>
<input id="input3" type="number"/>%<br>
和jQuery:
$(document).ready(function(){
$('#input2').on('input',function(){
var stock=$('#input1').val();
var value=$('#input2').val();
$('#input3').val((stock-value)/stock*100);
});
$('#input3').on('input',function(){
var percnt=$('#input3').val();
var stock=$('#input1').val();
$('#input2').val(stock-(stock*percnt/100));
});
$('#input1').on('input',function(){
if($('#input2').val()!=''){
$('#input2').trigger('input');
}
if($('#input2').val()!=''){
$('#input3').trigger('input');
}
});
});
您可以使用parseFloat
將字符串轉換為浮點數,然后使用浮點數的toFixed
函數將其設置為正確的小數位數:
var value = '33.234234234'; var float = parseFloat(value); alert(float.toFixed(2));
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.