简体   繁体   English

Javascript复选框onClick添加

[英]Javascript Checkbox onClick Addition

I have a form with two check box. 我有一个带有两个复选框的表格。

Checkbox A = $1500 Checkbox B = $1500 复选框A = 1500美元复选框B = 1500美元

What I want to do is, when Checkbox A is "checked", I want to display $1500 and add into hidden value. 我想做的是,当“复选框A”被“选中”时,我想显示$ 1500并添加到隐藏值中。 When unchecked, subtract $1500. 未选中时,减去$ 1500。

When both checkbox checked, I want each other to be performed addition, which means I want to have the value "$3000" in total, when one removed, subtracted accordingly. 当两个复选框都选中时,我希望彼此进行加法运算,这意味着我希望总共有一个值“ $ 3000”,如果将其删除,则要相应减去。

Currently with my codes, I can make it work for one checkbox only, which means, when checkbox is checked, it will be $1500 and when one it's removed back, it's substracted. 目前,使用我的代码,我可以使它仅适用于一个复选框,这意味着,当选中该复选框时,它的价格为1500美元,而当一个复选框被取回时,将被减去。 I don't know how to combine Checkbox A & Checkbox B. 我不知道如何结合复选框A和复选框B。

Please see my codes and help me out. 请查看我的代码并帮帮我。

HTML 的HTML

<label>
    <input type="checkbox" name="Meeting" onClick="if (this.checked) { onCheck3() } else { onUncheck3() }" value="Pre-Meeting 1" id="Meeting" />
     Pre-Meeting 1
</label>
<label>
    <input type="checkbox" name="Meeting" onClick="if (this.checked) { onCheck4() } else { onUncheck4() }" value="Pre-Meeting 2" id="Meeting" />
     Pre-Meeting 2
</label>

<input type="text" name="PreMeetingAmount" readonly id="PreMeetingAmount" /><input type="hidden" name="PreMeetingAmounthidden" readonly id="PreMeetingAmounthidden" />

Javascript Java脚本

function onCheck3(){  
    t = document.form1.PreMeetingAmount.value;
    t2 = 0;

    if (t == 0) {
        document.form1.PreMeetingAmount.value = 1500;
    }
}
function onCheck4(){  
    t = document.form1.PreMeetingAmount.value;
    t2 = 0;

    if (t == 0) {
        document.form1.PreMeetingAmount.value = 1500;
    }
}

function onUncheck3(){  
    t = document.form1.PreMeetingAmount.value;
    t = t - 1500;

        if (t == 0)
            document.form1.PreMeetingAmount.value = document.form1.PreMeetingAmounthidden.value;
        else 
            document.form1.PreMeetingAmount.value = t;
}    

function onUncheck4(){  
    t = document.form1.PreMeetingAmount.value;
    t = t - 1500;

        if (t == 0)
            document.form1.PreMeetingAmount.value = document.form1.PreMeetingAmounthidden.value;
        else 
            document.form1.PreMeetingAmount.value = t;
}      

You are always setting the value to 1500. You need to add 1500 rather than set it to 1500. Try changing onCheck3 and onCheck4 similar to this: 您始终将值设置为1500。您需要添加1500而不是将其设置为1500。请尝试如下更改onCheck3和onCheck4:

function onCheck3() {
    t = Number( document.form1.PreMeeting.value );
    document.form1.PreMeeting.value = t + 1500;
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM