Warum aktiviert er die Checkbox nicht?

snackx

Mitglied
Hallo im Moment weiss ich leider nicht weiter, kann mir jemand sagen warum die Checkbox nicht aktiviert ?
Das script steckt in einer PHP-Seite

echo "<script language=\"JavaScript\" type=\"text/javascript\">
function setCheck(obj, nr) {
document.getElementById(\"c_user[\"+nr+\"]\").checked=obj.checked;
}
</script>";

echo "\n<td><input type=\"text\" name=\"v_name[]\" value=\"$v_name\" ";
echo " onChange=\"setCheck(this, $id)\"";
echo "></td>";
echo "\n<td><input type=\"text\" name=\"n_name[]\" value=\"$n_name\" ";
echo " onChange=\"setCheck(this, $id)\"";
echo "></td>";
echo "\n<td><input type=\"text\" name=\"email[]\" value=\"$email\" ";
echo " onChange=\"setCheck(this, $id)\"";
echo "></td>";
echo "\n<td align=\"center\" bgcolor=\"#BCD8C5\">";
echo "\n<input type=\"checkbox\" name=\"c_user[$id]\" value=\"change\">";



Ich habe es auch schon ausprobiert mit onKeydown, onSelect und onClick aber leider will er die checkbox nicht aktivieren :(

Vielen Dank für eure Hilfe


Dirk
 
Hi,

ich gehe mal davon aus, dass das Ganze in einem Formular steckt. Damit ist es möglich, die
Elemente über elements[] anzusprechen. Versuche mal folgendes in deiner Funktion:
Code:
function setCheck(obj, nr) {
  obj.form.elements["c_user["+nr+"]"].checked = obj.checked;
}
Ciao
Quaese
 
Hi,

hab vorhin den Quellcode nur halbherzig angesehen.

Du willst also die Checkbox setzen, wenn sich der Wert in einem Textfeld geändert hat.

Bei onchange erfolgt der Aufruf der Funktion erst, wenn der Wert geändert wurde und
das Feld verlassen wurde. Im Fall einer Änderung weist du in der Funktion der Checkbox
einfach den boolschen Wert true zu.
HTML:
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>www.tutorials.de</title>
<meta name="author" content="Quaese" />
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
<script type="text/javascript">
  <!--
function setCheck(obj, nr) {
  obj.form.elements["c_user["+nr+"]"].checked = true;
}
//  -->
</script>
</head>
<body>
<form action="" method="">
<table>
  <tr>
    <td><input type="text" name="v_name[]" value="$v_name" onchange="setCheck(this, 1);" /></td>
    <td><input type="text" name="n_name[]" value="$n_name" onchange="setCheck(this, 1)" /></td>
    <td><input type="text" name="email[]" value="$email" onchange="setCheck(this, 1)" /></td>
    <td style="text-align: center; background: #bcd8c5;"><input type="checkbox" name="c_user[1]" value="change" /></td>
  </tr>
</table>
</form>
</body>
</html>
Das Beispiel funktioniert für eine $id mit dem Wert 1.

Ich hoffe, dass ich dein Problem nun richtig verstanden habe.

Ciao
Quaese
 

Neue Beiträge

Zurück