多选复选框返回最后的结果

时间:2014-06-09 19:17:22

标签: php html forms laravel

我在laravel中有一个表单,将多个复选框组合在一起,供用户选择游戏统计信息。在提交时,即使没有选择任何框,表单也会向服务器发送一个值,这是奇怪的。

Laravel:

    

    @for ($i = 1; $i < count($data['stats']); $i++)

         <input tabindex="1" type="checkbox" name="stats[]" id="{{ $data['stats'][$i]->Field }}" value="{{ $data['stats'][$i]->Field }}"> {{ $data['stats'][$i]->Field }}<br>

        @if ($i == 11)

            </div>

            <div class="col-sm-6">

        @endif

    @endfor

    </div>
</div>

哪个生成此HTML:

    <div class="row">
        <div class="col-sm-6">


             <input tabindex="1" type="checkbox" name="stats[]" id="Prestige" value="Prestige"> Prestige<br>



             <input tabindex="1" type="checkbox" name="stats[]" id="Level" value="Level"> Level<br>



             <input tabindex="1" type="checkbox" name="stats[]" id="Experience" value="Experience"> Experience<br>



             <input tabindex="1" type="checkbox" name="stats[]" id="Points" value="Points"> Points<br>



             <input tabindex="1" type="checkbox" name="stats[]" id="Kills" value="Kills"> Kills<br>



             <input tabindex="1" type="checkbox" name="stats[]" id="Deaths" value="Deaths"> Deaths<br>



             <input tabindex="1" type="checkbox" name="stats[]" id="TeamWins" value="TeamWins"> TeamWins<br>



             <input tabindex="1" type="checkbox" name="stats[]" id="TeamLosses" value="TeamLosses"> TeamLosses<br>



             <input tabindex="1" type="checkbox" name="stats[]" id="Bonus" value="Bonus"> Bonus<br>



             <input tabindex="1" type="checkbox" name="stats[]" id="AchievementScore" value="AchievementScore"> AchievementScore<br>



             <input tabindex="1" type="checkbox" name="stats[]" id="Demented" value="Demented"> Demented<br>


                </div>

                <div class="col-sm-6">



             <input tabindex="1" type="checkbox" name="stats[]" id="Volatile" value="Volatile"> Volatile<br>



             <input tabindex="1" type="checkbox" name="stats[]" id="Undead" value="Undead"> Undead<br>



             <input tabindex="1" type="checkbox" name="stats[]" id="Scavenger" value="Scavenger"> Scavenger<br>



             <input tabindex="1" type="checkbox" name="stats[]" id="Divinity" value="Divinity"> Divinity<br>



             <input tabindex="1" type="checkbox" name="stats[]" id="Withered" value="Withered"> Withered<br>



             <input tabindex="1" type="checkbox" name="stats[]" id="Killswitch" value="Killswitch"> Killswitch<br>



             <input tabindex="1" type="checkbox" name="stats[]" id="Precise" value="Precise"> Precise<br>



             <input tabindex="1" type="checkbox" name="stats[]" id="Adept" value="Adept"> Adept<br>



             <input tabindex="1" type="checkbox" name="stats[]" id="Utility" value="Utility"> Utility<br>



             <input tabindex="1" type="checkbox" name="stats[]" id="Class" value="Class"> Class<br>



             <input tabindex="1" type="checkbox" name="stats[]" id="Perk" value="Perk"> Perk<br>



        </div>
    </div>

    <button type="submit" class="btn btn-info btn-block" data-after="Updated Statistics|check" style="margin-top: 6px">Update Statistics</button>

    </form>
</div>

在服务器端:

if(Input::has('stats')) {

$stats = Input::get('stats');

if(is_array($stats)) {

    echo 'It is an array!';

    print_r($stats);

} else { echo 'no'; }

}

$stats始终返回Perk,这是列表中的最后一个。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

这不是表单本身的问题,而是我提交表单的方式。我是ajaxing文件,从表单中提取的数据不是最有效的方式。