terça-feira, 7 de dezembro de 2010

JavaScript Marcar Desmacar Todas

Script mais básico:
<script>
function selecionar_tudo(){
for (i=0;i<document.procurado.elements.length;i++)
if(document.procurado.elements[i].type == "checkbox")
document.procurado.elements[i].checked=1
}


function deselecionar_tudo(){
for (i=0;i<document.procurado.elements.length;i++)
if(document.procurado.elements[i].type == "checkbox")
document.procurado.elements[i].checked=0
}
</script>

No HTML:
<input type=button onclick='selecionar_tudo()' value='Marcar' class=preto />
<input type=button onclick='deselecionar_tudo()' value='Desmarcar' class=preto />

Lembrar que "procurado" é o "name" do form...

Script mais complexo:
Colocar este script no topo da sua webpage:

<script>
function Marcar(quem,valor,j) {
for (i=1; i<=j; i++) {
p = quem+i;
document.getElementsByName(p)[valor].checked = true;
}
}
function DesMarcar(quem,valor,j) {
for (i=1; i<=j; i++) {
p = quem+i;
document.getElementsByName(p)[valor].checked = false;
}
}
</script>

O HTML deve ser:
<input type=checkbox name=id1 value=1 /> Papel
<input type=checkbox name=id2 value=2 /> Fruta
<input type=checkbox name=id3 value=3 /> Paisagem

<input type=radio name='mma_info' value=1 onclick=Marcar('id',0,3); /> SIM (Repetir a mesma informação para todos)
ou Não <input type=radio name='mma_info' value=0 onclick=DesMarcar('id',0,3); />

O funcionamento do onclick:
id == nome do campo
0 == posição (no caso de checkbox sempre 0)
3 == quantidade de campos