【发布时间】:2020-12-05 04:33:32
【问题描述】:
我正在使用 Laravel 7 和 PHP 7.4。
我有一个包含 20 个字段的表单。我正在尝试为我的一个字段实现切换按钮。我的逻辑很简单。我有一个隐藏的输入字段来获取单击切换的值。它工作正常,但是当我尝试使用 ajax 将切换值传递给我的控制器时,它给了我一个类似的错误
jquery.min.js:2 Uncaught RangeError: Maximum call stack size exceeded
可能是,调用ajax的方法不对。 如何将切换值输入到控制器中?
刀片
<form method="POST" action="{{route('form_for_private_sellers')}}">
<div class="select form-group">
<input type="number" name="mileage" placeholder="10,000 (☒km - ☐Mi)" class="value-input" />
<input type="hidden" class="currency-input" />
<div class="currency-list switch">
<input type="checkbox" data-width="100%" class="input-lg" name="mileage" id="mileage" checked />
<input type="hidden" name="hidden_mileage" id="hidden_mileage" value="km" />
</div>
</div>
</form>
JavaScript
$('#mileage').bootstrapToggle({
on: 'km',
off: 'miles',
onstyle: 'success',
offstyle: 'success',
});
$('#mileage').change(function(e){
e.preventDefault();
if($(this).prop('checked'))
{
var km = $('#hidden_mileage').val('km');
}
else
{
var miles = $('#hidden_mileage').val('miles');
}
var _token = $('input[name="_token"]').val();
$.ajax({
url:"{{ route('form_for_private_sellers') }}",
method:"POST",
data:{_token:_token,km:km,miles:miles},
success:function(data){
if(data == 'done')
{
console.log('hello');
}
}
});
});
控制器
public function process_private_sellers(Request $request)
{
$mile = $request->get('miles');
dd($mile);
}
【问题讨论】:
标签: javascript php laravel laravel-7