简体   繁体   中英

How to make a checkbox change value?

So I am just wondering how would I change the value, whenever someone clicks on the checkbox. Basically the Total Land Transfer Tax (PLTT + TLTT) should become $0 . I have tired to do if statements with the checkbox but then the program does not working properly. Please I just need some advice should I do?

<!doctype html>
<html>
    <head>
        <script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
    </head>
    <body>
        <table bgcolor="#D4D4D4" border="1" width="450" height="60">
            <tr>
                <td width="175" align="center">Land Transfer Tax Calculator</td>
            </tr>
        </table>

        <table border="0" bgcolor="#E7E7E7" width="450" height="69">
            <tr>
                <td height="30" align="center">Enter the Price:<input type="textbox" name="x1" id="price" style="width:150px"></td><br>
            </tr>
            <tr>
                <td align="center" ><font size="2">(no commas or decimals)</font></td>
            </tr>
            <tr>
                <td align="center"><input type="checkbox"  id="check1" value="">First time home buyers</td>
            </tr>
            <tr>
                <td align="center"><input type="button" id="calculate" style="" value="Calculate"></td>
            </tr>
        </table>

        <table bgcolor="#E7E7E7" width="450" border="0" >
            <tr>
                <td align="center">Provincial Land Transfer Tax (PLTT)</td>
                <td align="center">Toronto Land Transfer Tax (TLTT)</td>
                <td align="center">Total Land Transfer Tax (PLTT + TLTT)</td>
            </tr>
            <tr>
                <td align="center"><input type="textbox" id="provincal" value="" style="width:135px" disabled/></td>
                <td align="center"><input type="textbox" id="toronto" value="" style="width:135px" disabled/></td>
                <td align="center"><input type="textbox" id="final" value="" style="width:135px" disabled></td>
            </tr>
        </table>
    </body>

    <script type="text/javascript">
        $("#calculate").click(function () {
            var x1 = $("#price").val();
            var y1,y2,y3,y4;

            if (x1 <= 50000) {
                y1=x1*0.005; //Provinical
                y2=x1*0.005; //Toronto
                y3=y1+y2;
            }
            else if (x1 <= 250000) {
                y1=(x1*0.01)-275; //Provinical
                y2=y1; //Toronto
                y3=y1+y2;
            }
            else if (x1<=400000) {
                y1=(x1*0.015)-1525; //Provinical
                y2=(x1*0.01)-275; //Toronto
                y3=y1+y2;
            }
            else if (x1>=400001) {
                y1=(x1*0.02)-3525;
                y2=y1-750;
                y3=y1+y2;
            }

            $("#rebate").val(y4);
            $("#final").val(y3);
            $("#toronto").val(y2);
            $("#provincal").val(y1);
        });
    </script>
</html>

how were you doing your if statement?

Try this at the end of the calculations (but before changing textbox values)

if ($("#check1").is(":checked")) {
    y3=0;
}

Use click event handler to handle checked/unchecked events and run the calculations inside as apt. jsFiddle link

$("#check1").click(function () {
     if ($("#check1").prop("checked")) {
         $("#final").val(0);
         $("#toronto").val(0);
         $("#provincal").val(0);
     }
     else{
         calc();
     }
 });

you may try it .

$("checkbox#check1").on('click',function(){
    if($(this).is(":checked")){
         $("input#price").val(0);

    }else{
        calculate();
    }
})

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

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