单选按钮已选中但未显示为已选中

时间:2017-12-28 06:46:17

标签: php html codeigniter datatables-1.10

我的表由15条记录组成,分为2页,但是,第一页中的单选按钮将不会被检查,如下图所示。

Output

这里是视图页面中使用的代码:

System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw
Arg_NullReferenceException

Microsoft.HockeyApp.Extensibility.Windows.UnhandledExceptionTelemetryModule.CoreApplication_UnhandledErrorDetected
 The parameter is incorrect. The parameter is incorrect.

浏览器源视图显示实际上也检查了单选按钮框。

<?php foreach($rights->result() as $row){ echo "<label class='radio-inline'><input type='radio' name='rightRBtn[".$perm_id."]' value='$row->id'".(($row->id == $right_id) ? " checked='checked'":'')." />" . $row->description."</label>"; }?>

有谁知道这是什么问题?

2 个答案:

答案 0 :(得分:3)

通过应用简单的foreach()简化if-else循环代码,并避免一些不必要的引号调整。

<?php foreach($rights->result() as $row){
  if($row->id == $right_id){
    echo "<label class='radio-inline'><input type='radio' name='rightRBtn[".$perm_id."]' value='$row->id' checked/>" . $row->description ."</label>"; 
  }else{
    echo "<label class='radio-inline'><input type='radio' name='rightRBtn[".$perm_id."]' value='$row->id'/>" . $row->description ."</label>"; 
  }   
}
?>

在我的本地结束时,它正在运作: -

我使用的代码: - https://prnt.sc/ht9mzb(我只是使用json_decode和json_encode使它成为stdclassobject数组)

输出: - https://prnt.sc/ht9m1n

答案 1 :(得分:0)

此问题的解决方法是删除responsive: true

$('#dataTables-example').DataTable({
//            responsive: true 
});