When using an ASP.NET CheckBox (and in out case, inherited from a CheckBox) it renders a span around the checkbox input control, this span control
Found this useful tip:
In Code Behind, use InputAttributes instead of Attributes.
For Example, type this:
chk.InputAttributes.Add("onchange", "updateFields()")
instead of this:
chk.Attributes.Add("onchange", "updateFields()")
or instead of inline declarations:
The last two will cause the wrapping span.