我有几组单选按钮是使用数据库中的数据生成的。目前我只能单击/成功选择这些单选按钮组中的第一组,其他按钮没有响应。
当我在jsfiddle中单独测试它时,代码工作正常,所以我认为不是这样,但是无论如何它都在这里
生成的 HTML/源:
<div class="radio">
<div>
<input type="radio" id="a" value="A" name="Q1" />
<span class="inline">A</span>
</div>
<div>
<input type="radio" id="b" value="B" name="Q1" />
<span class="inline">B</span>
</div>
<div>
<input type="radio" id="c" value="C" name="Q1" />
<span class="inline">C</span>
</div>
<div>
<input type="radio" id="d" value="D" name="Q1" />
<span class="inline">D</span>
</div>
<div>
<input type="radio" id="e" value="E" name="Q1" />
<span class="inline">E</span>
</div>
</div>
对于这里有价值的是我用来构建上述内容的 PHP:
$questions .='
<div class="radio">
';
foreach($values_data as $ke=>$va)
{
$questions.='
<div><input '.$tooltip.' type="radio" id="question_'.$i.'_'.$va['value'].'" value="'.$va['value'].'" name="question_'.$i.'" />
<span class="inline">'.$va['value'].'</span></div>
';
}
$questions .='
</div>
<div class="clear"></div>
';
echo $questions;
上面位于定义$i并调用数据库构建数组等的循环中。
我的控制台中没有错误。知道这可能是什么吗?谢谢
这是生成的实际源代码部分。也在jsfiddle工作。
为了结束这个问题:
这是一个奇怪的问题,似乎 css 属性阻止了正确的元素交互:从无线电元素中删除 float:right 或 display: 内联使它们能够再次单击。
我不确定为什么会这样,但我通过强制 .radio 类具有 display: block; 来解决这个问题。