webForumDet fria alternativet

Dynamisk lista och auto checkbox.

1 svar · 297 visningar · startad av Diffen

DiffenMedlem sedan feb. 200531 inlägg
#1

Dagens.

Har suttit och spanat runt lite på forumet och hittat bra saker som gör att man kan klicka i alla checkboxar med en checkbox (typ som på webmail osv).

Nu är det som så att jag sitter och bygger en liten php snurra här och då har jag tagit ut information från en databas som sedan listas upp på skärmen. Det fungerar klockrent.

Vad jag skulle vilja göra nu är att kunna markera alla checkboxar för att tex skicka mail till alla personer som ligger på listan. Jag hittade följande script här som fungerar fint men när jag skall implementera det i mitt system så checkas bara den första checkboxen i. De övriga blir helt tomma...

Här är scriptet jag hittade här på WebForum (tackar för det :))

<script type="text/javascript">
function markera(toCheck, divId){
var elms = document.getElementById divId).getElementsByTagName("INPUT");
for(var i=0; i<elms.length; i++)
if(elms*.type=="checkbox")
elms*.checked = toCheck;
}
</script>**

här är den kodrad som skriver ut checkboxen i den dynamiska listan:

echo " <td><div id=\"mail1\"><input type=\"checkbox\" name=\"mail1[]\" value=".$arrTemp["levID"]."></div></td>\n";

Och slutligen då så kommer själva markera alla checkboxen:

<td>Markera alla <input type="checkbox" onclick="markera(this.checked, 'mail1')" /></td>

Hoppas någon har någon liten ide på var ja ska ändra... Jag antar att det är en baggis men detta är första gången jag grejjar med javascript så ni får ha tålamod med mig :)

jawbreakerMedlem sedan jan. 2003296 inlägg
#2

Tanken med det där scriptet är, såvitt jag kan se, att markera/avmarkera alla checkboxar som ligger inom ett visst div-block. Då ska du nog inte ha div-taggar kring varje checkbox, utan _en_ div-tagg kring _alla_ checkboxar du vill kunna markera/avmarkera med ett klick.
Så det du vill göra är i princip:

<div id="mail">
<table>
<tr>
 <td><input type="checkbox" name="mail1[]" value="1" /></td>
 <td><input type="checkbox" name="mail1[]" value="2" /></td>
 <td><input type="checkbox" name="mail1[]" value="3" /></td>
 <td>Markera alla <input type="checkbox" onclick="markera(this.checked, 'mail')" /></td>
</tr>
</table>
</div>
130 ms totalt · 3 externa anrop · v20260731065814-full.3ab8d573
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)