dongwuxie7976 2014-02-04 11:21
浏览 30
已采纳

Codeigniter:使用数组填充多个复选框和标签

In Codeigniter I am trying to populate 4 checkboxes for site options in this way

<label for="noindex"><input type="checkbox" id="noindex" value="noindex"  class="" />No Index</label>
<label for="nofollow"><input type="checkbox" id="nofollow" value="nofollow"  class="" />No Follow</label>
.....and so on

I want to use array to populate instead of writing code for each. Here I am trying using array

<div class="form-group">
    <?= form_label('Search Engine', 'check', array('class' => 'col-sm-4 control-label')); ?>
    <div class="col-sm-6">              
    <?php
    $checkboxes = array('noindex', 'nofollow', 'noarchive', 'nosnippet');
    foreach($checkboxes as $check):
        $data = array(
        'name' => $check,
        'id' => $check,
        'value' => $check,
        'class' => '',                      
        );

        $labels_text = array('No Index', 'No Follow', 'No Archive', 'No Snippet');
        //print_r($check);
        echo '<div class="checkbox">';
        foreach ($labels_text as $label_text):
        echo form_label(form_checkbox($data) . $label_text, $check.'-label', array('for' => $check));
        endforeach;
        //echo form_checkbox($data);
        echo '</div>';
    endforeach;
    ?>
    </div>
</div>

Here I stuck with the labels. Where I want to display different label (of course) for each checkbox.

Can anyone help me to get different label for each?

  • 写回答

1条回答 默认 最新

  • doumu6997 2014-02-04 11:39
    关注

    Try like this:

    $checkboxes = array('noindex'=>'No Index', 'nofollow'=>'No Follow','noarchive'=>'No Archive', 'nosnippet'=>'No Snippet');
    
    foreach($checkboxes as $check=>$label_text):
      $data = array(
            'name' => $check,
            'id' => $check,
            'value' => $check,
            'class' => '',                      
            );   
    
            echo '<div class="checkbox">';
    
            echo form_label(form_checkbox($data) . $label_text, $check.'-label', array('for' => $check));
    
            echo '</div>';
        endforeach;
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd
  • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
  • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
  • ¥15 Windows11, backspace, enter, space键失灵