我的java脚本和单选按钮有问题。 我想制作单选按钮只能根据数据库中的id值在每行中只选择一个,但在我的情况下,该函数在第一行工作,但其余不是因为它只返回第一行值。单选按钮是动态生成的(单选按钮行的计数基于db中的id数)。
下面的是我的java脚本:
function test1(){
var tes = document.getElementById('max');
var zes = document.getElementById('max1');
alert(tes.value)
if(tes.checked){
zes.checked = false;
}
}
function test2(){
var tes = document.getElementById('max');
var zes = document.getElementById('max1');
alert(zes.value)
if(zes.checked){
tes.checked = false;
}
}
这是我的单选按钮代码:
<td align = 'center'>
<?php
$test = $col['id'];
$testing = "select training.* from training inner join rekod on training.id = rekod.id where rekod.id = '$test'";
$userx = mysql_query($testing) or die (mysqli_error());
$u = mysql_fetch_assoc($userx);
echo $u['id'];
echo "<input type ='radio' name='x' onchange='test1();' required id='max' value ='".$u['id']."'>";?>
</td><td align='center'>
<?php
$te = $col['id'];
$tes = "select training.* from training inner join rekod on training.id = rekod.id where rekod.id = '$te'";
$us = mysql_query($tes) or die (mysqli_error());
$ux = mysql_fetch_assoc($us);
echo $ux['id'];
echo "<input type ='radio' name='x1' onchange='test2();' required id='max1' value ='".$ux['id']."'>";?>
</td>
上面的代码会生成这样的代码(数字是id):
我想这样做:
但它变成了这样:
有人能告诉我我的代码有什么问题吗?
答案 0 :(得分:0)
您正在使用document.getElementById
并尝试访问多个元素,这是不正确的。如果您要访问和操作多个DOM
元素,则需要使用document.getElementsByClassName
或document.getElementsBtTagName
。在HTML页面中,您只能有一个具有唯一ID的元素(两个元素的id永远不能相同)。
在您的情况下,您正在使用循环并为循环中的所有元素分配相同的id。这就是问题所在。
谢谢。
答案 1 :(得分:0)