Avatar billede moejensen Nybegynder
15. september 2002 - 07:49 Der er 4 kommentarer og
1 løsning

check alle checkboxe

Jeg har et problem med at få markeret alle checkboxe i en sektion. Jeg har nedenstående kode, hvor der er to typer af personer, der er MUL og der er DAT. Problemet er at jeg i bunden har forsøgt at lave to checkboxe, hvor man kan markere de to grupper hver isvær. De virker også som de skal, næsten, for når jeg klikker på den der eksempelvis markere alle DAT'erne, så bliver de godt nok markeret, men den checkbox, der checket de andre af, bliver ikke checket.

Jeg håber det er til at forstå hvad jeg skriver :-)

----- HER ER KODEN ----

<SCRIPT language="JavaScript" type="text/javascript">
function checkMUL()
{
  for (var i=0;i<document.mboxsummary.elements.length;i++)
  {
    var e = document.mboxsummary.elements[i];
    if (e.name != 'DAT')
    e.checked = !e.checked;
  }
}

function checkDAT()
{
  for (var i=0;i<document.mboxsummary.elements.length;i++)
  {
    var e = document.mboxsummary.elements[i];
    if (e.name != 'MUL')
    e.checked = !e.checked;
  }
}
</SCRIPT>


<form action="sendmail.asp" name="mboxsummary" METHOD="POST">
        <table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber1">
        <% Do While Not Ns.EOF %>
          <tr>
            <td width="10%"><input type="checkbox" name="DAT" value="<%=ns("id")%>"></td>
            <td width="90%"><%=ns("name")%></td>
          </tr>
    <%
    Ns.MoveNext
    Loop
    %>
    <% Do While Not Bs.EOF %>
          <tr>
            <td width="10%"><input type="checkbox" name="MUL" value="<%=bs("id")%>"></td>
            <td width="90%"><%=bs("name")%></td>
          </tr>
    <%
    Bs.MoveNext
    Loop%>
      <tr>
            <td width="10%">&nbsp;</td>
            <td width="90%">&nbsp;</td>
          </tr>
      <tr>
            <td width="10%"><input type="checkbox" name="selMUL" onClick="return checkDAT();"></td>
            <td width="90%"><b>Marker Første del</b></td>
          </tr>
          <tr>
            <td width="10%"><input type="checkbox" name="selDAT" onClick="return checkMUL();"></td>
            <td width="90%"><b>marker sidste del</b></td>
          </tr>
        </table>
      </div>
      </td>
    </tr>

</form>

</body>

</html>
<%Conn.Close
Set Conn = Nothing
%>
Avatar billede Slettet bruger
15. september 2002 - 12:36 #1
Du må ikke have mange elementer med samme navn, med mindre det er radio-buttons.

Derfor bliver du nødt til at skrive deres navne ud, så de starter med henholdvis DAT og MUL efterfulgt at et stigende nummer, eksempelvis DAT3 og MUL11.
Dit script skal så rettes til:

<SCRIPT language="JavaScript" type="text/javascript">
function checkMUL()
{
  for (var i=0;i<document.mboxsummary.elements.length;i++)
  {
    var e = document.mboxsummary.elements[i];
    if (e.name.indexOf("DAT") == 0)
    e.checked = !e.checked;
  }
}

function checkDAT()
{
  for (var i=0;i<document.mboxsummary.elements.length;i++)
  {
    var e = document.mboxsummary.elements[i];
    if (e.name.indexOf("MUL") == 0)
    e.checked = !e.checked;
  }
}
</SCRIPT>

De checkbokse, der tjekker de andre af, skal se således ud:

<input type="checkbox" name="selDAT" onClick="checkDAT();">
Avatar billede Slettet bruger
15. september 2002 - 12:58 #2
Hov for søren, jeg har byttet om på funktionsnavnene. checkMUL skal hedde checkDAT og vice versa.
Avatar billede moejensen Nybegynder
15. september 2002 - 14:15 #3
tusind tak for hjælpen, det virkede bare i første hug.
Avatar billede moejensen Nybegynder
15. september 2002 - 14:27 #4
Nå jeg var lige lidt for hurtig, kan jeg få dig til at se fortsættelsen her:

http://www.eksperten.dk/spm/258139
Avatar billede Slettet bruger
16. september 2002 - 15:56 #5
Så gerne...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester