首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如果在Laravel foreach中提交后有检查表,如何显示检查表?

如果在Laravel foreach中提交后有检查表,如何显示检查表?
EN

Stack Overflow用户
提问于 2018-06-08 23:26:44
回答 2查看 222关注 0票数 -1

我尝试在foreach刀片中提交表单,但为什么提交后没有检查?

代码语言:javascript
复制
<form method="get" class="form-inline float-left">
   <div class="form-group mb-2">
      <input type="text" id="keyword" name="keyword" class="form-control" placeholder="keyword here" value="{{ $keyword }}">
   </div>
   <ul class="nav nav-pills" id="nav">
      @foreach($menu as $d)
      <li role="presentation">
         <a class="text-capitalize" >
         <input type="checkbox" name="cx[]" value="{{ $d->custom_search_id }}" {!! (is_array(old('cx[]')) and in_array($d->custom_search_id, old('cx[]'))) ? ' checked' : '' !!} > 
         {!! $d->name !!}
         </a>
      </li>
      @endforeach
   </ul>
   <div class="form-group mb-2">
      <input type="submit" class="btn btn-primary" value="GO!">
   </div>
</form>

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-06-09 01:06:25

我找到了答案,创建一些像这样的函数:

代码语言:javascript
复制
<?php
   function checkCX($id){
   foreach(\Request::input("cx") as $input){
   if($input == $id){
   return true;
   }
   }
   return false;
   }
   ?>
   
<form method="get" class="form-inline float-left">
   <div class="form-group mb-2">
      <input type="text" id="keyword" name="keyword" class="form-control" placeholder="keyword here" value="{{ $keyword }}">
   </div>
   <ul class="nav nav-pills" id="nav">
      @foreach($menu as $d)
      <li role="presentation">
         <a class="text-capitalize" >
         <input type="checkbox" name="cx[]" value="{{ $d->custom_search_id }}" @if(!empty($d->custom_search_id)) {{ checkCX($d->custom_search_id) ? 'checked' : '' }} @else @endif > 
         {!! $d->name !!}
         </a>
      </li>
      @endforeach
   </ul>
   <div class="form-group mb-2">
      <input type="submit" class="btn btn-primary" value="GO!">
   </div>
</form>

票数 0
EN

Stack Overflow用户

发布于 2018-06-09 00:03:40

如果要检查旧输入(具有多个值),则在检查旧值(不是old('cx[]')而是old('cx') )时,应使用不带方括号的输入名称,例如:

代码语言:javascript
复制
   <ul class="nav nav-pills" id="nav">
      @foreach($menu as $d)
      <li role="presentation">
         <a class="text-capitalize">
         <input type="checkbox" name="cx[]" value="{{ $d->custom_search_id }}" {!! (is_array(old('cx')) and in_array($d->custom_search_id, old('cx'))) ? ' checked' : '' !!} > 
         {!! $d->name !!}
         </a>
      </li>
      @endforeach
  </ul>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50763886

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档