I would have posted this as a comment, but I couldn't do formatting.
I don't know if this will solve your problem, but as a general thought you should not use "ctl00_ContentPlaceHolder1_ChkAssignPages" The Id could conceivably change on you, to be safe you should do something like
var chkBoxList1= document.getElementById("<%= ChkAssignPages.ClientID");
This will let .NET put the real client ID in there for you each time.