Hola
Has de hacer algunos pequeños cambios a la función. Obtienes el nombre del campo, para aislar los campos que tengan ese nombre.
Cita: function funcion(bol, frm, chkbox) {
for (var i=0;i < frm.elements[chkbox].length;i++) { // Dentro de todos los elementos, seleccionamos lo que tengan el mismo nombre que el seleccionado
elemento = frm.elements[chkbox][i]; // Ahora es bidimensional
elemento.checked = (bol) ? true : false;
}
}
Ahora la llamada a la función quedaría así
Cita: funcion(this.checked, this.form, this.name)
Suerte