Jump to content

check box with ids to be checked only the exact id


salgergawi

Recommended Posts

I have a problem if anyone can helps,

HTML FORM

<html>
<body>
    <form action=""><input type="checkbox" name="" id="cbB0000F0S1" onchange="changestatus('B0000F0S1',this.checked)"><input type="checkbox" name="" id="cbB0000F0S2" onchange="changestatus('B0000F0S2',this.checked)"><input type="checkbox" name="" id="cbB0000F0S3" onchange="changestatus('B0000F0S3',this.checked)"><input type="checkbox" name="" id="cbB0000F0S4" onchange="changestatus('B0000F0S4',this.checked)"><input type="checkbox" name="" id="cbB0000F0S5" onchange="changestatus('B0000F0S5',this.checked)"><input type="checkbox" name="" id="cbB0000F0S6" onchange="changestatus('B0000F0S6',this.checked)"><input type="checkbox" name="" id="cbB0000F0S7" onchange="changestatus('B0000F0S7',this.checked)"><input type="checkbox" name="" id="cbB0000F0S8" onchange="changestatus('B0000F0S8',this.checked)"><input type="checkbox" name="" id="cbB0000F0S9" onchange="changestatus('B0000F0S9',this.checked)"><input type="checkbox" name="" id="cbB0000F0S10" onchange="changestatus('B0000F0S10',this.checked)"><input type="checkbox" name="" id="cbB0000F0S11" onchange="changestatus('B0000F0S11',this.checked)"><input type="checkbox" name="" id="cbB0000F0S12" onchange="changestatus('B0000F0S12',this.checked)"><input type="checkbox" name="" id="cbB0000F0S13" onchange="changestatus('B0000F0S13',this.checked)"><input type="checkbox" name="" id="cbB0000F0S14" onchange="changestatus('B0000F0S14',this.checked)"><input type="checkbox" name="" id="cbB0000F0S15" onchange="changestatus('B0000F0S15',this.checked)"><input type="checkbox" name="" id="cbB0000F0S16" onchange="changestatus('B0000F0S16',this.checked)"><input type="checkbox" name="" id="cbB0000F0S17" onchange="changestatus('B0000F0S17',this.checked)"><input type="checkbox" name="" id="cbB0000F0S18" onchange="changestatus('B0000F0S18',this.checked)"><input type="checkbox" name="" id="cbB0000F0S19" onchange="changestatus('B0000F0S19',this.checked)"><input type="checkbox" name="" id="cbB0000F0S20" onchange="changestatus('B0000F0S20',this.checked)"></form>
</body>
</html>

 

Jquery Code:

	function changestatus(str,checked){
		$("input[type=checkbox][id*="+str+"]").each(function(){
      
			o=this;
			if(o.id) if(o.id.indexOf(str)!=-1) {
				eval("e=document.getElementById('"+o.id+"')");
				if(!e.disabled) e.checked=checked;
			}
		})
	}

 

my problem is when i select the first checkbox is aoutomatlicy the others check as you can see in the image, the first has ID=1 and the others has ID=11, 12, 13 and so on, how can remove and use only the exact id?

firefox_lmK0vPAtiE.png.748490edf4bda9a7b120f448dfd7783e.png

This is also an online sample:

https://codepen.io/akerr95/pen/ZGyZmv

Link to comment
Share on other sites

$("input[type=checkbox][id*="+str+"]")

first will look at any id with 'cbB0000F0S1' anywhere within id value, now look at the values above 'cbB0000F0S9', 'cbB0000F0S10', 'cbB0000F0S11', 'cbB0000F0S12', see the problem?

Remove the asterisk to match exact value of item just checked.

  • Thanks 1
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...