Я схватил ваш код и немного подправил его, но, похоже, он работает ...
<form name='frm'>
<input type="checkbox" name="chk" value="<?php echo($arr['id']); ?>" onClick="Click()" id="CK">// all checkboxex
<input onClick="selectall()" type="checkbox" value="yes" name="c1">// one checkbox
</form>
/*function called*/
<script>
function selectall()
{
if(!document.frm.chk.checked)
{
document.frm.chk.value="true";
for(var i=0; i<document.frm.elements.length; i++)
{
if((document.frm.elements[i].type)=="checkbox")
{
document.frm.elements[i].checked = true;
}
}
}
else if(document.frm.chk.checked)
{
document.frm.chk.value="false";
for(var i=0; i<document.frm.elements.length; i++)
{
if((document.frm.elements[i].type)=="checkbox")
{
document.frm.elements[i].checked = false;
}
}
}
}
</script>
Теперь, когда вы нажимаете второй флажок, он проверяет / снимает флажок другого.Пришлось проверять проверенное свойство, а не значение.
Да, и, как сказал @ Гордон, гораздо проще использовать отладчик, такой как Firebug, чтобы выяснить, почему он не работает.Предполагается, что ваша форма называется называется frm?