By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
459,607 Members | 1,788 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 459,607 IT Pros & Developers. It's quick & easy.

Multiple Checkboxes

P: n/a
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.frmShortService.chkLH.checked) i++;
if (document.frmShortService.chkLTL.checked) i++;
....

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

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

Thanks in Advance!

Dave
Jul 23 '05 #1
Share this Question
Share on Google+
5 Replies


P: n/a
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="chkCount(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." <da*****@charter.net> wrote in message
news:2f**************************@posting.google.c om...
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.frmShortService.chkLH.checked) i++;
if (document.frmShortService.chkLTL.checked) i++;
...

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

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

Thanks in Advance!

Dave

Jul 23 '05 #2

P: n/a
Dave D. wrote:
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.


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/
Jul 23 '05 #3

P: n/a
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" <ne********@mattkruse.com> wrote in message
news:c7*********@news4.newsguy.com...
Dave D. wrote:
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.


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/

Jul 23 '05 #4

P: n/a
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" <ni****@webadstudio.com> wrote in message news:<c7**********@ctb-nnrp2.saix.net>...
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" <ne********@mattkruse.com> wrote in message
news:c7*********@news4.newsguy.com...
Dave D. wrote:
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.


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/

Jul 23 '05 #5

P: n/a
Dominique wrote:
what if they checked more than that?


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/
Jul 23 '05 #6

This discussion thread is closed

Replies have been disabled for this discussion.