Portál AbcLinuxu, 4. prosince 2025 22:38
na checkboxu mam Onclick=DoSomething('var')
function DoSomething($var) {
document.pujc_form.getElementByName($var).disabled=false;
}
var je PHPkem generovany name, ktery mam potom stejne v tom inputu
<input type="checkbox" name="name[]" value="31" onClick=DoSomething("31_check") />
<input type="text" name="31_check" disabled="true" value="15.03.10">
Cely je to jeste ve formu, ale to snad nevadi. Takhle jak to je, to nefacha a nemam paru co mam zmenit, aby to jelo. Asi se neumim dostat k tomu prvku, protoze nefunguje zmenit ani value atd ... .
Řešení dotazu:
function DoSomething(name) {
document.getElementByName(name).disabled=false;
}
echo "function DoSomething() {";
echo "document.pujc_form.getElementByName(\"$var\").disabled=false;";
echo "}";
echo "<input type=\"checkbox\" name=\"name[]\" value=\"31\" onClick=DoSomething($var) />";
echo "<input type=\"text\" name=\"$var\" disabled=\"true\" value=\"15.03.10\">";
To by ale bylo něco jiného, než jste napsal. Z toho by se pak vygenerovalo toto:
echo "function DoSomething() {";
echo "document.pujc_form.getElementByName("31_check").disabled=false;";
echo "}";
echo "<input type=\"checkbox\" name=\"name[]\" value=\"31\" onClick=DoSomething($var) />";
echo "<input type=\"text\" name=\"31_check\" disabled=\"true\" value=\"15.03.10\">";
Jinak mám pocit, že ID elementu musí začínat písmenem, ne číslicí.
Co vám nefunguje na tom příkladu, který jsem napsal v předchozím komentáři?
Soucasny funkcni kod ... pouzivam na PHP CodeIgniter:
foreach ($query->result() as $row){if ($counter % 2) {$tr = '<tr class="suda">';} else {$tr = '<tr class="licha">';}
$vysledek .= $tr. '<td>'.form_checkbox('name[]', $row->id, FALSE, 'onChange="check(this, \''.$row->id.'_check\');"').'</td>'.... '<td><input type="text" name="'.$row->id.'_check" disabled value="'.date('d.m.y').'"></td>'
. '</tr>';$counter++;}
A ten JS je jak psal Fuky. Mate pravdu, muj problem byl v tom, ze jsem v JS predaval promennou stejne jako v PHP.
Děkuji všem za ochotnou pomoc při řešení takovéto prkotiny.
.
<html>
<body>
<form name="form">
<input type="checkbox" name="checkbox1" onChange="check(this, 'text1');">
<input type="text" name="text1" disabled><br>
<input type="checkbox" name="checkbox2" onChange="check(this, 'text2');">
<input type="text" name="text2" disabled>
</form>
<script>
function check(obj, name){
if (obj.checked == true) {
document.form.elements[name].value = "Hello World";
document.form.elements[name].disabled = false;
}
else {
document.form.elements[name].value = "";
document.form.elements[name].disabled = true;
}
}
</script>
</body>
</html>
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.