无法使用javascript添加结果

时间:2014-02-10 07:55:13

标签: javascript jquery html

以下是我的javascript计算工具,您可以在其中显示值的百分比。好吧,如果价值是100美元,百分比是10%那么它将是10美元。之后,我刚刚添加了一个名为“其他费用”的新字段,因此最终结果将为20美元(如果其他费用值为10美元)。但无法得到结果。

Javascript Part:

<script type="text/javascript">
function incrementValue()
{
    var value = parseInt(document.getElementById('pvalue1').value, 10);
    value = isNaN(value) ? 0 : value;
    value +=10000
    document.getElementById('pvalue1').value = value;
}

function decrementValue()
{
    var value = parseInt(document.getElementById('pvalue1').value, 10);
    value = isNaN(value) ? 0 : value;
    value -=10000
    document.getElementById('pvalue1').value = value;
}

function incrementValueO()
{
    var value = parseInt(document.getElementById('otherFees').value, 10);
    value = isNaN(value) ? 0 : value;
    value +=10000
    document.getElementById('otherFees').value = value;
}

function decrementValueO()
{
    var value = parseInt(document.getElementById('otherFees').value, 10);
    value = isNaN(value) ? 0 : value;
    value -=10000
    document.getElementById('otherFees').value = value;
}


function toggleIncrement()
{
    var value = parseFloat(document.getElementById('pvalue2').value, 10);
    value = isNaN(value) ? 0 : value;
    value +=0.1
    value = parseFloat(value).toFixed(2)
    document.getElementById('pvalue2').value = value;
     $('#pvalue1').trigger("change");
}

function toggleDecrement()
{
    var value = parseFloat(document.getElementById('pvalue2').value, 10);
    value = isNaN(value) ? 0 : value;
    value -=0.1
    value = parseFloat(value).toFixed(2)
    document.getElementById('pvalue2').value = value;
     $('#pvalue1').trigger("change");
}

jQuery(document).ready(function(){
 $('#pvalue1').change(function(){
 var agentfee = parseFloat($('#pvalue1').val(), 10) * parseFloat($('#pvalue2').val(), 10) / 100; 
 var otherFees = parseFloat(document.getElementById('otherFees').value);
 var totalOtherFees = agentfee + otherFees;
 $('#pvalue3').val(totalOtherFees);

 var percentagereduce = parseFloat($('#pvalue2').val(), 10) - 0.1;
 var newvalue = parseFloat($('#pvalue1').val(), 10) * percentagereduce / 100; 
 $('#pvalue4').val(newvalue);         
 var takevalue1 = parseFloat($('#pvalue3').val(), 10);
 var takevalue2 = parseFloat($('#pvalue4').val(), 10);
 var finalvalue = takevalue1 - takevalue2;
 var finalvalue = parseFloat(finalvalue).toFixed(2)
 $('#pvalue5').val(finalvalue);
});

  $('#pvalue2').change(function(){


 var agentfee = parseFloat($('#pvalue1').val(), 10) * parseFloat($('#pvalue2').val(), 10) / 100; 
 $('#pvalue3').val(agentfee);

 var percentagereduce = parseFloat($('#pvalue2').val(), 10) - 0.1;
 var newvalue = parseFloat($('#pvalue1').val(), 10) * percentagereduce / 100; 
 $('#pvalue4').val(newvalue);         
 var takevalue1 = parseFloat($('#pvalue3').val(), 10);
 var takevalue2 = parseFloat($('#pvalue4').val(), 10);
 var finalvalue = takevalue1 - takevalue2;

 $('#pvalue5').val(finalvalue);    
});   
});   
</script>

Html Part:

<table border="0" cellpadding="5">
<tr>
    <td>House Sale Price:</td>
    <td>$</td>
    <td><input name="pvalue1" class="form-control"  onkeypress="validate(event)" placeholder=" Enter Sale Price" type="number" value="<?=$pvalue1?>" id="pvalue1" size="20" required ></td>
    <td><input type="button" onClick="incrementValue()" value="+" /><input type="button" onClick="decrementValue()" value="-" /> </td>
</tr>
<tr>
    <td>Rate quoted by agent:</td>
    <td>%</td>
    <td><input name="pvalue2"  class="form-control" onkeypress="validate(event)" placeholder=" Percentage" type="number" value="<?=$pvalue2?>" id="pvalue2" size="20"  required ></td>
    <td><input type="button" onClick="toggleIncrement()" value="+" /><input type="button" onClick="toggleDecrement()" value="-" /></td>
</tr>
<tr>
    <td>Other Fees</td>
    <td>$</td>
    <td><input name="otherFees" class="form-control"  onkeypress="validate(event)" placeholder=" Enter Sale Price" type="number" value="<?=$pvalue1?>" id="otherFees" size="20" required ></td>
    <td><input type="button" onClick="incrementValueO()" value="+" /><input type="button" onClick="decrementValueO()" value="-" /> </td>
</tr>

</table>                                                                                                                                                                                                                   
 <input name="doRegister" type="submit" id="doRegister" value="Calculate" style="color:white;font-size:20px;" class="btn btn-primary">

<br><br>
<h2>Results</h2>
<table>
<tr>
<td>Agent Fees:</td>
<td>$</td>
<td><input name="pvalue3"  onkeypress="validate(event)"  class="form-control"  placeholder="" type="number" value="<?=$pvalue3?>" id="pvalue3" size="10" class="resultfield"  ></td></tr>
<tr>
<td></td>
<td><span id='show-me'  class="form-control" style='display:none'><input name="pvalue4" placeholder="" type="number" value="<?=$pvalue4?>" id="pvalue4" size="10" class="resultfield"  ></span></td></tr>
<tr>
<td>Reducing the rate the agent is charging by 0.1% will save you: </td>
<td>$</td>
<td><input name="pvalue5"   onkeypress="validate(event)" class="form-control"  placeholder="" type="number" value="<?=$pvalue5?>" id="pvalue5" size="10" class="resultfield"  ></td>
</tr>
</table>

1 个答案:

答案 0 :(得分:0)

您还没有为otherFee编写更改功能,这可能如下所示,并将包含在就绪功能中。

 $('#otherFees').change(function(){
 var agentfee = parseFloat($('#pvalue1').val(), 10) * parseFloat($('#pvalue2').val(), 10) / 100; 
 var otherFees = parseFloat(document.getElementById('otherFees').value);
 var totalOtherFees = agentfee + otherFees;
 $('#pvalue3').val(totalOtherFees);

 var percentagereduce = parseFloat($('#pvalue2').val(), 10) - 0.1;
 var newvalue = parseFloat($('#pvalue1').val(), 10) * percentagereduce / 100; 
 $('#pvalue4').val(newvalue);         

 var takevalue1 = parseFloat($('#pvalue3').val(), 10);
 var takevalue2 = parseFloat($('#pvalue4').val(), 10);
 var finalvalue = takevalue1 - takevalue2;
 var finalvalue = parseFloat(finalvalue).toFixed(2)
 $('#pvalue5').val(finalvalue);   
});