单击增量/减量按钮后未显示Javascript公式结果

巴布

好吧,我有一个JavaScript工具,可以在其中计算总和(例如10,000)的百分比(%)。当我输入值(例如10,000)和百分比(例如10%)时它可以工作,但是问题是,我只添加了一个增量和减量按钮,因此用户不必写10,000、30,000等。他们可以使用我的增量和减量按钮。不幸的是,在按下增量和减量按钮后,结果没有显示。如果我手动输入号码,那么它正在工作。

实时工具:

http://propertyjungle.com.au/tools.php

JavaScript代码:

<script>
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 toggleIncrement()
{
    var value = parseFloat(document.getElementById('pvalue2').value, 10);
    value = isNaN(value) ? 0 : value;
    value +=0.1
    document.getElementById('pvalue2').value = value;
}

function toggleDecrement()
{
    var value = parseFloat(document.getElementById('pvalue2').value, 10);
    value = isNaN(value) ? 0 : value;
    value -=0.1
    document.getElementById('pvalue2').value = value;
}

jQuery(document).ready(function () {
    $('#pvalue1').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);
    });
    $('#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程式码:

<table>
<tr>
    <td>House Sale Price:</td>
    <td>$<input name="pvalue1" onkeypress="validate(event)" value="" placeholder=" Enter Sale Price" style="width:140px;" type="number" value="<?=$pvalue1?>" id="pvalue1" size="20" class="required inputfield2" 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>&nbsp;&nbsp;<input name="pvalue2" onkeypress="validate(event)" value="0" placeholder=" Percentage" style="width:140px;" type="number" value="<?=$pvalue2?>" id="pvalue2" size="20" class="required inputfield2" required >%</td>
    <td><input type="button" onClick="toggleIncrement()" value="+" /><input type="button" onClick="toggleDecrement" value="-" /></td>
</tr>
</table>  

<h2>Results</h2>
<table>
<tr><td>Agent Fees:</td><td>$<input name="pvalue3" value="0" placeholder="" type="number" value="<?=$pvalue3?>" id="pvalue3" size="10" class="resultfield"  ></td></tr>
<tr><td></td><td><div id='show-me' style='display:none'><input name="pvalue4" value="0" placeholder="" type="number" value="<?=$pvalue4?>" id="pvalue4" size="10" class="resultfield"  ></div></td></tr>
<tr><td>Reducing the rate the agent is charging by 0.1% will save you: </td><td>$<input name="pvalue5" value="0" placeholder="" type="number" value="<?=$pvalue5?>" id="pvalue5" size="10" class="resultfield"  ></td></tr>
</table>
查理

之所以发生这种情况,是因为更改字段的值不会触发该change事件:为什么当我使用val()设置select的值时,jquery change事件没有触发?

如果您不想重构所有代码,则可以简单地触发jQuerychange事件,然后运行计算:

function toggleIncrement(){
    ...
    $("#pvalue1").trigger("change");
}

function toggleDecrement(){
    ...
    $("#pvalue1").trigger("change");
}

...

例子

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

单击添加按钮后未显示提交按钮(AngularJS)

来自分类Dev

单击按钮后显示错误Javascript

来自分类Dev

单击按钮后显示错误Javascript

来自分类Dev

单击单选按钮后未显示Google Recaptcha

来自分类Dev

单击增量按钮(Vue.js)后,跨度未更改值

来自分类Dev

单行前/后增量减量评估

来自分类Dev

单击后按钮未升高

来自分类Dev

单击按钮时未显示模态-原始JavaScript

来自分类Dev

单击按钮后显示照片

来自分类Dev

单击按钮后显示网格

来自分类Dev

单击按钮后按钮未禁用

来自分类Dev

单击按钮后菜单未滑出

来自分类Dev

单击更新按钮后,图像未编辑

来自分类Dev

单击提交按钮后未添加评论

来自分类Dev

快速单击后按钮图像未更改

来自分类Dev

如果每 5 秒后未单击按钮,如何显示 div

来自分类Dev

单击工具栏中的搜索按钮后,视图未正确显示

来自分类Dev

Android默认按钮单击效果未显示

来自分类Dev

单击时按钮未显示在html中

来自分类Dev

单击按钮时未显示弹出窗口

来自分类Dev

单击按钮时添加的视图未显示?

来自分类Dev

重新启动按钮后,图像未显示在测验结果中

来自分类Dev

如何使iFrame在单击按钮后全屏显示?

来自分类Dev

单击按钮后无法显示弹出窗口

来自分类Dev

单击按钮后显示PopupWindow吗?

来自分类Dev

剧情:单击按钮后如何显示图形?

来自分类Dev

单击按钮后无法显示弹出窗口

来自分类Dev

单击按钮后显示小窗口

来自分类Dev

AJAX:单击按钮后显示更新的变量