我正在基於輸入自動計算用戶利潤的表單上工作。這是我的HTML表單:爲什麼jQuery val()返回空/對象
$(document).ready(function() {
$('#inv_amount').keyup(function() {
var invAmount = $(this).val();
var profit = $('#profitPercent').val();
var profCalc = +invAmount + ((profit/100) * invAmount);
$('#exp_earning').val(profCalc);
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form>
<div class="form-group">
<label for="inv_amount" class="control-label">Amount to Invest:</label>
<input type="text" name="inv_amount" id="inv_amount" class="form-control" placeholder="Enter an amount" required="true">
</div>
<div class="form-group">
<label for="exp_earning" class="control-label">Expected Earning:</label>
<input type="text" name="exp_earning" id="exp_earning" class="form-control" placeholder="Your expected earning" disabled="true">
<input type="hidden" name="profitPercent" id="profitPercent" value="12">
</div>
</form>
編輯
利潤計算正確,並顯示在形式,但是當我檢查的形式,對exp_earning
返回空。我也檢查過使用console.log(),我發現它是返回一個對象,而不是值。
其他編輯:我真的很想知道兩件事情。
爲什麼
#exp_earning
返回空值,當我嘗試提交表單,即使它是在瀏覽器中可見。爲什麼當我嘗試在我的瀏覽器控制檯中使用
var outPut = $('#exp_earning').val(profCalc); console.log(outPut);
查看該值時,該值顯示爲對象?
是的,我試圖驗證使用php'空()'。 –
我輸入'1000'並獲得'1120'。爲了那些不是經紀人的使用者的利益,能否請你解釋爲什麼1120不是預期的輸出,預期的結果以及它與jQuery.val()的關係? –
在Chrome上它可以工作:[示例](https://jsfiddle.net/ubkvvwh5/) – Uncoke