带有多维数组的单选按钮

时间:2014-11-28 23:57:34

标签: php laravel

你好我在laravel中有以下表格:

<?php $i = 0; ?>
        @foreach ($quiz as $q)
        <div class="row">
            <div class="col-md-12">

                <div class="panel panel-default">
                    <div class="panel-heading">
                        <h3 class="panel-title">{{ '<b>' . ($i + 1). '.</b>  ' . $q->question }}</h3>
                    </div>
                    <div class="panel-body">
                        <?php
                            $a = json_decode($q->answers);
                        ?>

                        <div class="form-group col-md-6">
                            <label class="radio inline" for="correctAnswer[0]">
                                {{ Form::radio('correctAnswer[$i][0]', 'A', array('class' => 'iradio', 'required' => 'required')) }}
                                {{ $a[0] }}
                            </label>
                        </div>

                        <div class="form-group col-md-6">
                            <label class="radio inline" for="correctAnswer[0]">
                                {{ Form::radio('correctAnswer[$i][1]', 'B', array('class' => 'iradio', 'required' => 'required')) }}
                                {{ $a[1] }}
                            </label>
                        </div>


                        <div class="form-group col-md-6">
                            <label class="radio inline" for="correctAnswer[0]">
                                {{ Form::radio('correctAnswer[$i][2]', 'C', array('class' => 'iradio', 'required' => 'required')) }}
                                {{ $a[2] }}
                            </label>
                        </div>


                        <div class="form-group col-md-6">
                            <label class="radio inline" for="correctAnswer[0]">
                                {{ Form::radio('correctAnswer[$i][3]', 'D', array('class' => 'iradio', 'required' => 'required')) }}
                                {{ $a[3] }}
                            </label>
                        </div>
                    </div>
                </div>

            </div>
        </div>
        <?php $i++; ?>
        @endforeach

您可能已经注意到我使用多维数组作为无线电输入的名称,例如:

{{ Form::radio('correctAnswer[$i][0]', 'A', array('class' => 'iradio', 'required' => 'required')) }}

每个问题集有四个可能的答案,用户需要选择一个,但是由于多维数组,即使它们是一个无线电组,也可以选择多于1个输入: enter image description here

我想知道如何解决这个问题,提前谢谢你。 :)

1 个答案:

答案 0 :(得分:1)

使用单选按钮时,需要为一组单选按钮设置相同的名称。但是你为它们设置了不同的名称。您必须更改以下所有内容(只需删除[0],[1],[2],...):

{{ Form::radio('correctAnswer[$i]', 'A', array('class' => 'iradio', 'required' => 'required')) }}
<!-- Rest of code -->