Multiple Checkboxes

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • Dave D.

    Multiple Checkboxes

    I have a total of 8 checkboxes, but the user is only allowed to check
    any three of them. After have been checked I have an alert box saying
    that only 3 boxes can be checked. I'm trying to get so that it
    disable's the checkboxes that are not checked, but then if one of the
    three get unchecked, then all checkboxes become enabled again. Here's
    my code so far....(In Javascript)

    function chkCount()
    {
    var i = 0;

    if (document.frmSh ortService.chkL H.checked) i++;
    if (document.frmSh ortService.chkL TL.checked) i++;
    ....

    if (i > 3)
    {
    alert("Only 3 Checkboxes can be checked");
    return(false);
    }
    }

    <input type="checkbox" name="chkLH" value="YES" onclick="chkCou nt()">
    .....

    Thanks in Advance!

    Dave
  • Dominique

    #2
    Re: Multiple Checkboxes

    Im not gonna do the code for you, but i'll explain the approach you should
    use...

    create a global variable eg. cCount
    initially set it to 0 --> var cCount = 0

    change you chkCount function to chkCount(targ) where targ will be sent as
    onclick="chkCou nt(this)"
    so you know which checkbox was clicked..

    everytime you call your chkCount function do this..
    check whether the chekbox is now checked or unchecked:
    if (targ.checked) {

    } else {

    }...


    check the value of cCount
    if the box is being unchecked, simply do this: cCount-- and nothing else
    (get that from ur condition above)

    if it is being checked...
    if less than 3, do nothing, just increment cCount --> cCount++
    if not, then you don't want that one checked, so:
    targ.checked = false
    where targ is the checkbox that was just clicked...

    you can alert the user and ask them to uncheck something first blah blah

    i hope you get the picture...
    come to think of it, i coulda just done the function for you..., but then
    you won't learn will you :0)

    good luck!


    "Dave D." <daved37@charte r.net> wrote in message
    news:2fa69e56.0 405070415.4a137 05e@posting.goo gle.com...[color=blue]
    > I have a total of 8 checkboxes, but the user is only allowed to check
    > any three of them. After have been checked I have an alert box saying
    > that only 3 boxes can be checked. I'm trying to get so that it
    > disable's the checkboxes that are not checked, but then if one of the
    > three get unchecked, then all checkboxes become enabled again. Here's
    > my code so far....(In Javascript)
    >
    > function chkCount()
    > {
    > var i = 0;
    >
    > if (document.frmSh ortService.chkL H.checked) i++;
    > if (document.frmSh ortService.chkL TL.checked) i++;
    > ...
    >
    > if (i > 3)
    > {
    > alert("Only 3 Checkboxes can be checked");
    > return(false);
    > }
    > }
    >
    > <input type="checkbox" name="chkLH" value="YES" onclick="chkCou nt()">
    > ....
    >
    > Thanks in Advance!
    >
    > Dave[/color]


    Comment

    • Matt Kruse

      #3
      Re: Multiple Checkboxes

      Dave D. wrote:[color=blue]
      > I have a total of 8 checkboxes, but the user is only allowed to check
      > any three of them. After have been checked I have an alert box saying
      > that only 3 boxes can be checked. I'm trying to get so that it
      > disable's the checkboxes that are not checked, but then if one of the
      > three get unchecked, then all checkboxes become enabled again.[/color]

      Rather than disabling the checkboxes after 3 are picked, why not just not
      allow them to check them? onClick, check if 3 are checked. If so, then
      uncheck the one they just checked and show them an alert.

      I have a library which does all this for you, with very minimal coding
      required. If you want to check it out, look at


      Good luck!

      --
      Matt Kruse
      Javascript Toolbox: http://www.mattkruse.com/javascript/


      Comment

      • Dominique

        #4
        Re: Multiple Checkboxes

        what if they checked more than that?
        you still have to keep track, else you gotta go uncheck everything they did,
        not very pratical if you're working with a checklist of more than just 8,
        and the user won't really like having to redo everything if everything is
        uncheck coz he didn't understand i was sposed to check a limited number of
        items... stop the user WHEN he/she makes the mistake.

        cheers
        :o)

        "Matt Kruse" <newsgroups@mat tkruse.com> wrote in message
        news:c7g877020v k@news4.newsguy .com...[color=blue]
        > Dave D. wrote:[color=green]
        > > I have a total of 8 checkboxes, but the user is only allowed to check
        > > any three of them. After have been checked I have an alert box saying
        > > that only 3 boxes can be checked. I'm trying to get so that it
        > > disable's the checkboxes that are not checked, but then if one of the
        > > three get unchecked, then all checkboxes become enabled again.[/color]
        >
        > Rather than disabling the checkboxes after 3 are picked, why not just not
        > allow them to check them? onClick, check if 3 are checked. If so, then
        > uncheck the one they just checked and show them an alert.
        >
        > I have a library which does all this for you, with very minimal coding
        > required. If you want to check it out, look at
        > http://www.mattkruse.com/javascript/checkboxgroup/
        >
        > Good luck!
        >
        > --
        > Matt Kruse
        > Javascript Toolbox: http://www.mattkruse.com/javascript/
        >
        >[/color]


        Comment

        • Dave D.

          #5
          Re: Multiple Checkboxes

          So basically just increment i in a for loop? Is there a command to
          "uncheck"? Or undo the last action the user did?

          Thanks
          Dave

          "Dominique" <niques@webadst udio.com> wrote in message news:<c7nbmp$kb 2$1@ctb-nnrp2.saix.net> ...[color=blue]
          > what if they checked more than that?
          > you still have to keep track, else you gotta go uncheck everything they did,
          > not very pratical if you're working with a checklist of more than just 8,
          > and the user won't really like having to redo everything if everything is
          > uncheck coz he didn't understand i was sposed to check a limited number of
          > items... stop the user WHEN he/she makes the mistake.
          >
          > cheers
          > :o)
          >
          > "Matt Kruse" <newsgroups@mat tkruse.com> wrote in message
          > news:c7g877020v k@news4.newsguy .com...[color=green]
          > > Dave D. wrote:[color=darkred]
          > > > I have a total of 8 checkboxes, but the user is only allowed to check
          > > > any three of them. After have been checked I have an alert box saying
          > > > that only 3 boxes can be checked. I'm trying to get so that it
          > > > disable's the checkboxes that are not checked, but then if one of the
          > > > three get unchecked, then all checkboxes become enabled again.[/color]
          > >
          > > Rather than disabling the checkboxes after 3 are picked, why not just not
          > > allow them to check them? onClick, check if 3 are checked. If so, then
          > > uncheck the one they just checked and show them an alert.
          > >
          > > I have a library which does all this for you, with very minimal coding
          > > required. If you want to check it out, look at
          > > http://www.mattkruse.com/javascript/checkboxgroup/
          > >
          > > Good luck!
          > >
          > > --
          > > Matt Kruse
          > > Javascript Toolbox: http://www.mattkruse.com/javascript/
          > >
          > >[/color][/color]

          Comment

          • Matt Kruse

            #6
            Re: Multiple Checkboxes

            Dominique wrote:[color=blue]
            > what if they checked more than that?[/color]

            You misunderstood.

            What I was saying was, don't disable the remaining checkboxes. Instead, as
            soon as they check one more than they are allowed to, throw up an alert
            message, and then uncheck the box. So it's impossible for them to check more
            than what is allowed. This is much easier than disabling all the remaining
            checkboxes, IMO.

            --
            Matt Kruse
            Javascript Toolbox: http://www.mattkruse.com/javascript/


            Comment

            Working...