我在Laravel 5.1表单上有一个复选框,已将Bootstrap Toggle属性合并到其中。问题是,提交表单时,复选框未随请求一起发送。我已确认已选中(选中=选中)。我在同一表单上有另一个复选框,没有使用Bootstrap Toggle样式,并且按预期方式通过。
这是表单输入:
{!! Form::checkbox('status', '1', $employee->status, array('data-toggle' => 'toggle')) !!}
($ employee-> status是一个布尔值)
这是我在项目中加载的所有脚本和CSS:
<!-- Stylesheets -->
<link href="/css/app.css" rel="stylesheet">
<link href="https://code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css" rel="stylesheet" >
<link href="https://gitcdn.github.io/bootstrap-toggle/2.2.2/css/bootstrap-toggle.min.css" rel="stylesheet">
<link href="/css/pams.css" rel="stylesheet">
<link href="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.3/css/select2.min.css" rel="stylesheet">
<link href="https://cdnjs.cloudflare.com/ajax/libs/dropzone/4.3.0/dropzone.css" rel="stylesheet">
@yield('head-css')
<!-- Fonts -->
<link href='//fonts.googleapis.com/css?family=Roboto:400,300' rel='stylesheet' type='text/css'>
<!-- Scripts -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.4/jquery.js"></script>
<script src="https://code.jquery.com/ui/1.12.0/jquery-ui.js"></script>
{{-- Twitter Bootstrap --}}
<script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.6/js/bootstrap.min.js"></script>
{{-- This is for the converting a checkbox to a sliding toggle --}}
<script src="https://gitcdn.github.io/bootstrap-toggle/2.2.2/js/bootstrap-toggle.min.js"></script>
{{-- This is for the autocomplete in the select boxes --}}
<script src="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.3/js/select2.min.js"></script>
{{-- This is for adding photos through drag and drop or click --}}
<script src="https://cdnjs.cloudflare.com/ajax/libs/dropzone/4.3.0/dropzone.js"></script>
如果删除“ data-toggle” =>“ toggle”,它将按预期工作。
最佳答案
我试图重现您的问题,我创建了具有形式的laravel页面(boostrap,dropzone和该bootstrap切换已包含且处于活动状态):
{!! Form::open(array('url' => 'test')) !!}
{!! Form::checkbox('status', '1', true, array('data-toggle' => 'toggle')) !!}
{!! Form::submit('Send') !!}
{!! Form::close() !!}
我在Chrome和Mozilla上运行了这段代码,结果是:
如果我已选中复选框(启用),则状态= 1已添加到表单请求中(嗅探器为Charles)
但是,如果我再次单击以将其禁用,则表单请求中未添加任何内容。这很正常,您可以简单地确认here
也许问题出在select2库中,但是我不知道您在做什么。剩下的代码对您很有帮助。