【问题标题】:How to remove duplicated checkboxes如何删除重复的复选框
【发布时间】:2016-09-02 18:40:48
【问题描述】:

请帮我解决这个问题。 我正在尝试根据正在运行的数据库中的信息填充复选框,但问题是由于某些未知原因复制了复选框。

<li class="treeview">
    <a href="#"><i class="fa fa-tachometer"></i> <span>Dashboard</span></a>
    <ul class="treeview-menu">
        <li style="padding-left: 5px;">
            <a href="#"><i class="active fa fa-search"></i> <span>Searches</span> <i class="fa fa-angle-left pull-right"></i></a>
            <ul class="treeview-menu">
                <div id="checkbox-container">
                    <li style="padding-left: 10px;">
                        <input type="checkbox" id="selectAll" onclick='selectAll(this.checked)'/>
                        <span style="color: #fff;">SELECT ALL</span>
                    </li>
                    <?php foreach ($query as $search_row) { ?>
                        <?php foreach($checkSearch as $s) { ?>
                            <?php 
                                $box = 0;
                                if($search_row->searchid == $s->idsearch){
                                    $box = 1;
                                }
                            ?>
                            <form method="post" id="the-dash">
                                <li style="padding-left: 10px;">
                                    <input type="checkbox" id="searches" class="searchid" onclick="getSearchId()" value="<?php echo $search_row->searchid; ?>" name="searchName"  <?php echo ($box == 1 ? 'checked' : ''); ?>> 
                                    <span id="searchname" style="color: #fff; "><?php echo $search_row->searchname; ?> <?php echo '<br>'; ?><span>
                                </li>
                            </form>
                        <?php } ?>
                    <?php } ?>
                </div>
            </ul>
        </li>
    </ul>
</li>

【问题讨论】:

  • 只从数据库中获取不同的值
  • &lt;?php foreach ($query as $search_row) { ?&gt; &lt;?php foreach($checkSearch as $s) {?&gt;
  • @dass 查询是完美的并且使用 DISTINCT。谢谢!
  • 问题解决了吗??
  • @dass 不,还没有!

标签: php html codeigniter checkbox


【解决方案1】:

试试这个

在您的控制器中,将 id 存储在一个数组中

$idsearchs = array();
foreach($checkSearch as $s) {
    $idsearchs[] = $s->idsearch;
}

在你看来

<?php foreach ($query as $search_row) {
    $box = in_array($search_row->searchid, $idsearchs) ? 1 : 0;
?>
    <li style="padding-left: 10px;">
        <form method="post" id="the-dash">
            <input type="checkbox" id="searches" class="searchid" onclick="getSearchId()" value="<?php echo $search_row->searchid; ?>" name="searchName"  <?php echo ($box == 1) ? 'checked="checked"' : ''; ?>> 
            <span id="searchname" style="color: #fff; "><?php echo $search_row->searchname; ?> <?php echo '<br>'; ?><span>
        </form>
    </li>
<?php } ?>

您已经使用 $query 完成了 foreach,并使用 $checkSearch 在 foreach 中完成了操作,您会得到重复的复选框。

【讨论】:

  • OK 改变这个
猜你喜欢
  • 1970-01-01
  • 2014-07-02
  • 1970-01-01
  • 1970-01-01
  • 2015-02-06
  • 2012-01-21
  • 1970-01-01
  • 2019-01-10
  • 2011-06-20
相关资源
最近更新 更多