<select class="js-example-basic-multiple categories form-control" name="categories[]" style="width: 100%" multiple="multiple">
<option value=""></option>
<option value="fresher">fresher</option>
<option value="experienced"> experienced</option>
</select>
表单中的多选控件。
console.log($("#new-job-form").serialize());
显示控制台中的所有其他表单元素。
_token=5eDJlHTMLybD73xyW4C0wdXjYrsL3xJa5CsxrwYS&_method=POST&company_id=1&job_title=
当我删除multiple="multiple"
时,正在检测name =“categories []”元素。
此外,如果我在类别中选择一个值,那么也会检测到元素。
_token=5eDJlHTMLybD73xyW4C0wdXjYrsL3xJa5CsxrwYS&_method=POST&company_id=1&job_title=&categories%5B%5D=
现在我无法验证控制器中的类别字段,因为请求数组中没有类别键。
'categories.*' => 'required',
答案 0 :(得分:0)
你需要检查那些东西。
- Clear view cache.
- Your jquery is included in head tag.?
- Make some changes in form and check the changes is effect in web console Element Tab.?
- check Form id and jQuery select element id is same.?
- Put dd($request); in your controller method and check parameter is received.?
这是我的代码,此代码经过测试并在我的PC上运行。
1。)在web.php
Route::post('/home', 'HomeController@store')->name('home.store');
2。)HTML表格
<form action="javascript:void(0)" method="post" id="form_sbtn">
{{ csrf_field() }}
<select class="js-example-basic-multiple categories form-control" name="categories[]" style="width: 100%" multiple="multiple">
<option value=""></option>
<option value="fresher">fresher</option>
<option value="experienced"> experienced</option>
</select>
<button name="sbtn" type="submit">Save</button>
</form>
3.)Ajax表单
<script type="text/javascript">
$(document).ready(function(){
$('input[name=sbtn]').click(function(e){
e.preventDefalut();
$.ajax({
url : "{{ route('home.store') }}",
method: 'POST',
data : $("#form_sbtn").serialize(),
success : function(response){
console.log(response);
},
error : function(error){
},
});
});
});
</script>
4.。控制器公共方法。
public function store(Request $request)
{
dd($request);
}
答案 1 :(得分:0)
https://github.com/davidstutz/bootstrap-multiselect/issues/653
我认为这个问题还没有解决......
答案 2 :(得分:-2)
$("#new-job-form").validate({
rules: {
'categories[]': {
required: true,
}
},
messages:
{
'categories[]': {
required: "Please provide categories"
}
}
});
试试这个