[英]How to set an input value with jquery?
我有這個代碼,我想當輸入字段#amount 被添加時,jquery 將獲得該值,將其乘以 0.20 並將該值添加到#agentfee。 #agentfee 的值將用於使用 php 代碼在 sql 表中插入值。 我不知道為什么我的代碼不起作用
HTML
<label for="amount">Rent Amount</label>
<input type="number" id="amount" name="amount" placeholder="500,000">
<label for="agentfee">Agent fee N</label>
<input type="Number" id="agentfee" name="agentfee" value="" readonly><br>
JS
$('#amount').change(function() {
var inputValue = $("#amount").val();
agentFee = inputValue * 0.20;
$('#agentfee').val=('agentFee');
});
正如@Calvin 已經指出的那樣,您需要更改$('#agentfee').val()
行:
$('#amount').on("input",function() { var inputValue = $("#amount").val(); agentFee = inputValue * 0.20; $('#agentfee').val(agentFee.toFixed(2)); });
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script> <label for="amount">Rent Amount</label> <input type="number" id="amount" name="amount" placeholder="500,000"> <label for="agentfee">Agent fee N</label> <input type="Number" id="agentfee" name="agentfee" value="" readonly><br>
您不需要 agentFee 周圍的刻度或等號。 它應該是
$('#agentfee').val(agentFee);
試試這個: $('#amount').change(function() {
var inputValue = $("#amount").val();
agentFee = inputValue * 0.20;
$('#agentfee').val('agentFee');
});
我希望它有用
您的
$('#agentfee').val=('agentFee');
用 agentFee 的文本覆蓋$('#agentfee')
的val
agentFee
。 相反,您想調用val
並傳遞一個值,例如$('#agentfee').val(yourvalue);
. 這是一個簡化的解決方案(我已將事件從change
為input
,以確保輸入響應更快。如果您更喜歡change
事件,請告訴我)
$('#amount').on('input', function() { $('#agentfee').val($("#amount").val() * 0.20); });
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <label for="amount">Rent Amount</label> <input type="number" id="amount" name="amount" placeholder="500,000"> <label for="agentfee">Agent fee N</label> <input type="Number" id="agentfee" name="agentfee" value="" readonly><br>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.