Erik: mehrere radio mit einem klick ändern

Titel sagt hoffentlich alles. Soweit bin ich schon durch abändern eines anderen Scriptes gekommen, aber es klappt noch nicht.

  
<html>  
<head>  
<title>test</title>  
</head>  
<body>  
<script type="text/javascript">  
function ChangeDisplay(id_){  
 obj = document.getElementById(id_);  
 if(obj.style.display == "selected")  
 {  
  obj.style.display="";  
 }  
 else  
 {  
  obj.style.display="selected";  
 }  
}  
</script>  
<form>  
<table border="1">  
 <tr>  
  <td>Datei</td>  
  <td>löschen <a href="javascript:ChangeDisplay('del')">alle</td></td>  
  <td>neu erstellen <a href="javascript:ChangeDisplay('neu')">alle</a></td>  
 </tr>  
 <tr>  
  <td>Datei 1</td>  
  <td><input type="radio" name="test1" id="del" /></td>  
  <td><input type="radio" name="test1" id="neu" /></td>  
 </tr>  
 <tr>  
  <td>Datei 2</td>  
  <td><input type="radio" name="test2" id="del" /></td>  
  <td><input type="radio" name="test2" id="neu" /></td>  
 </tr>  
</table>  
</form>  
</body>  
</html>  

  1. Moin

    if(obj.style.display == "selected")

    style.display hat keinen Wert "selected".
    Die Bedingung trift daher nie zu.

    <td><input type="radio" name="test1" id="del" /></td>
      <td><input type="radio" name="test1" id="neu" /></td>

    ..

    <td><input type="radio" name="test2" id="del" /></td>
      <td><input type="radio" name="test2" id="neu" /></td>

    hier haben je 2 Elemente die gleiche ID. IDs darf es aber nur jeweils einmal geben.

    Gruß
    rfb

    1. das ist mir ja bewußt, aber wie muss man es ändern damit es klappt?

      1. Moin
         > das ist mir ja bewußt, aber wie muss man es ändern damit es klappt?

        <script type="text/javascript">
        function ChangeDisplay(was){
        dateienanzahl=2;
        for (var i=1; i<=dateienanzahl; i++) {
         obj = document.getElementById(was+i);
         obj.checked=(obj.checked)?false:true;
        }}
        </script>
        <form>
        <table border="1">
         <tr>
          <td>Datei</td>
          <td>löschen <a href="javascript:ChangeDisplay('del')">alle</td></td>
          <td>neu erstellen <a href="javascript:ChangeDisplay('neu')">alle</a></td>
         </tr>
         <tr>
          <td>Datei 1</td>
          <td><input type="radio" name="test1" id="del1" /></td>
          <td><input type="radio" name="test1" id="neu1" /></td>
         </tr>
         <tr>
          <td>Datei 2</td>
          <td><input type="radio" name="test2" id="del2" /></td>
          <td><input type="radio" name="test2" id="neu2" /></td>
         </tr>
        </table>

        so könnte es gehen, mit ein bisschen Studium des JavaScript-Kapitels von SelfHTML und etwas zeitlichem Aufwand wirst du das auch selbst eleganter hinbekommen.
        ZB ist hier noch das große Problem, das ein Link zum Pseudoprotokoll javascript: im HTML steht, der bei deaktiviertem JavaScript sinnlos ist.

        Gruß
        rfb

        1. danke, das ist genau das was ich wollte.

          und bei wem Javascript deaktiviert ist, der muss halt manuell anlicken.