我希望能够检查两个输入字段值(return和takeplaced),例如100和20
如果结果字段=赢,则执行计算:return(--)creditPlaced,然后在另一个称为利润的字段中显示结果。
PHP用于从表中提取数据---忽略PHP代码。
HTML
<div class="form-group">
<label for="stakePlaced">Stake Placed</label>
<input type="text" class="form-control mb-2" placeholder="stakePlaced" name="stakePlaced" value="<?php echo $stakePlaced ?>">
</div>
<div class="form-group">
<label for="result">Result</label>
<input type="text" class="form-control mb-2" placeholder="result" name="result" id="result" onchange="calcula" value="<?php echo $result ?>">
</div>
<div class="form-group">
<label for="return">Return</label>
<input type="text" class="form-control mb-2" placeholder="return" name="return" id="return" value="<?php echo $return ?>">
</div>
<div class="form-group">
<label for="return">Profit</label>
<input type="text" class="form-control mb-2" placeholder="profit" name="profit" id="profit" value="<?php echo $profit ?>">
</div>
JS
function calcula(){
$(document).ready(function(){
$("#result").keyup(function(){
if (this.value == "Win"){
var vreturn = document.getElementById('return').value;
var stake = document.getElementById('stakePlaced').value;
var result = parseFloat(vreturn)-parseFloat(stake);
var secresult = result.toFixed(2);
document.getElementById('profit').value = secresult;
}
});
});
window.onload = calcula;
答案 0 :(得分:1)
您的数学尚不清楚...我不知道在处理数字值时该值怎么可能是Win
...但这可能超出了范围。
要通过name
获取输入值(由于没有id
),可以使用attribute selectors。
请参见下文...在“结果”字段中键入“赢”(第二个)。它将在“利润”字段(最后)中输出“ 0.00”。
$(document).ready(function(){
$("#result").keyup(function(){
if (this.value == "Win"){
console.log("Win!");
var vreturn = $("[name='return']").val();
var stake = $("[name='stakePlaced']").val();
var result = parseFloat(vreturn)-parseFloat(stake);
var secresult = result.toFixed(2);
$("[name='profit']").val(secresult);
}
});
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="form-group">
<label for="stakePlaced">Stake Placed</label>
<input type="text" class="form-control mb-2" placeholder="stakePlaced" name="stakePlaced" value="20">
</div>
<div class="form-group">
<label for="result">Result</label>
<input type="text" class="form-control mb-2" placeholder="result" name="result" id="result" value="100">
</div>
<div class="form-group">
<label for="return">Return</label>
<input type="text" class="form-control mb-2" placeholder="return" name="return" value="20">
</div>
<div class="form-group">
<label for="return">Profit</label>
<input type="text" class="form-control mb-2" placeholder="profit" name="profit" value="30">
</div>
并且您不需要在运行于$(document).ready(function(){
...的命名函数中包含window.onload
。