【发布时间】:2015-03-17 17:51:22
【问题描述】:
我制作了两个自定义 jquery 函数,当复选框被选中时,它会获取一组数据。我试图将数组分配为输入字段的值(类型=隐藏)并将其发送到 laravel 控制器。问题是当我检查几个字段时数组没有正确填充。它只取一个值并将其发送到控制器。我需要将所有检查的值作为数组发送到 laravel 控制器。请在这方面帮助我。我把我的东西贴在下面:
jquery:
<script>
var allvals = [] ;
function categoryDelete(){
$('.categorySelect:checked').each(function(){
allvals = $(this).val();
})
return allvals;
}
function subcategoryDelete(){
$('.subcategorySelect:checked').each(function(){
allvals = $(this).val();
})
return allvals;
}
jQuery(document).ready(function($){
var deleteArray = [] ;
$('.categorySelect').click(function(){
deleteArray = categoryDelete();
$('#deleteArray').attr('value',deleteArray);
$('#deleteValue').attr('value',0);
})
$('.subcategorySelect').click(function(){
deleteArray = subcategoryDelete();
$('#deleteArray').attr('value',deleteArray);
$('#deleteValue').attr('value',1);
})
})
</script>
html表单:
{{ Form::open(array('url' => 'manage-category/delete')) }}
<input type="hidden" id='deleteArray' name='deleteArray[]'>
<input type="hidden" id='deleteValue' name='deleteValue[]'>
<button id='deleteBtn' class="btn btn-sm red pull-right">
Delete <i class="fa fa-times"></i>
</button>
{{ Form::close() }}
路线:
Route::post('/manage-category/delete','CategoryController@deleteCategory');
控制器:
public function deleteCategory()
{
$deleteArray = Input::get('deleteArray');
$deleteValue = Input::get('deleteValue');
var_dump($deleteArray);
die();
}
调试结果:
array(1) { [0]=> string(1) "2" }
【问题讨论】:
标签: javascript php jquery arrays laravel