2015-04-02 55 views
2

我有这样的代码传递数组值复选框

@foreach($files['files'] as $file) 
<tr> 
<td><input type="checkbox" name="check_list[]" value="{{$file}}"></td> 
<td>{{file['id']</td> 
<td>{{file['name']</td> 
<td>{{file['type']</td> 
<td>{{file['modified']</td> 
</tr> 
@endforeach 

$file包含1个文件,如姓名,身份证的所有细节,修改日期等 我可以通过他们复选框?我想要发生的事情:当用户点击复选框时,文件的所有细节都将包含复选框。如果我连接它们,我将在分组时遇到问题。上面的代码将数组作为字符串输入。我想通过$file - 1个文件的所有细节,复选框。所以当用户选中复选框时,会给出一系列文件及其详细信息。

如果我把它们放在foreach中,它只会有一个复选框。我正在开发一个系统,我希望有人能帮助我。我被困在这个问题上。

请帮忙。

UPDATE:

{{ Form::open(array('url'=>'evaluate','check_list'=>true, 'method'=>'POST', 'id'=>'check_list')) }} 
      @foreach($files['folders'] as $file) 
       <tr> 
       <td><input type="checkbox" name="check_list[]" ></td> 
       <td> 
        <a href={{url("/home/".$file['file_name'])}}> 
         {{ $file['file_name'] }} 
        </a> 
        </td> 
        <td class="center">{{ $file['file_type'] }}</td> 
        <td class="center">{{ $file['file_modified'] }}</td> 
        <td>{{ $file['file_size'] }}</td> 
        <td class="center">{{ $file['location'] }}</td> 
        <input type="hidden" name="check_list[location]" value="{{$file['location']}}">{{ $file['location'] }} 
        <input type="hidden" name="check_list[file_type]" value="{{$file['file_type']}}"> 
        <input type="hidden" name="check_list[file_id]" value="{{$file['file_id']}}"> 
        <input type="hidden" name="check_list[file_name]" value="{{$file['file_name']}}"> 

       </tr> 
       @endforeach 

      @foreach($files['files'] as $file) 
       <tr> 
       <td><input type="checkbox"></td> 

       <td>{{ $file['file_name'] }}</td> 
       <td class="center">{{ $file['file_type'] }}</td> 
       <td class="center">{{ $file['file_modified'] }}</td> 
       <td>{{ $file['file_size'] }}</td> 
       <td class="center">{{ $file['location'] }}</td> 
       <input type="hidden" name="check_list[location]" value="{{$file['location']}}">{{ $file['location'] }} 
       <input type="hidden" name="check_list[file_type]" value="{{$file['file_type']}}"> 
       <input type="hidden" name="check_list[file_id]" value="{{$file['file_id']}}"> 
       <input type="hidden" name="check_list[file_name]" value="{{$file['file_name']}}"> 

       </tr> 
       @endforeach 
       {{Form::hidden('action')}} 
       {{ Form::close()}} 

回答

0

如果不回答你的问题,请与一个更具体的目的对其进行更新。然而,实际上您只需将文件的id作为参考,然后将其解析为您的控制器中的文件或处理发送请求的任何位置。

在你看来:

@foreach($files as $file) 
    <input type="checkbox" name="{{$file->id}}" value="selected"> // or 1 or true 
@endforeach 

在你的控制器:

public function postFile() 
{ 
    $files = File::all() // change according to your model or repository  
    $selectedFiles = []; 

    foreach ($files as $file) { 
     if (Input::get($file->id) == "selected") 
     { 
      $selectedFiles[] = $file; 
     } 
    } 

    // do what you want with the selected files example to show you the array 
    foreach($selectedFiles as $selectedFile){ 
     $selectedFile['was_selected'] = "Yes"; 
    } 
} 
+0

我想是这样的。它只返回一个文件的详细信息.. – 2015-04-02 16:00:03

+0

你不是这样做正确的:)你可以在这里粘贴你做了什么,我可以检讨它吗?也许用新代码编辑你的问题?谢谢 – 2015-04-02 16:41:35

+0

这是我的代码 – 2015-04-03 01:08:09