Я пытаюсь проверить значения формы множественного выбора, используя правило проверки IN.Я продолжаю получать сообщение об ошибке, что мое значение неверно, несмотря на то, что он идентичен одному из параметров в списке.Я думаю, что это должен быть способ, которым я идентифицирую имя в валидаторе («шаг1»).Однако я также использовал step1. , step1.0. , step1 *.Он будет продолжать выдавать ответ «Неверный ответ», который соответствует ошибке IN.
Контроллер
public function postQuestionDetailsStep1(Request $request)
{
if ($request->ajax())
{
$step1 = $request->input('step1');
$this->validate($request, [
'step1' => 'required',
'step1.0' => 'in:Less than $50,000,$50,000-$100,000,More than $100,000',
], [
'step1.required' => 'You must choose one.',
'step1.in' => 'Invalid response.',
]);
}
}
Просмотр
<input type="checkbox" class="custom-control-input" id="step1-option1" name="step1[]" value="Less than $50,000">
<input type="checkbox" class="custom-control-input" id="step1-option2" name="step1[]" value="$50,000-$100,000">
<input type="checkbox" class="custom-control-input" id="step1-option3" name="step1[]" value="More than $100,000">
Javascript
$('#step-1').submit(function(e) {
e.preventDefault();
var step1 = [];
$("input[name='step1[]']:checked").each(function() {
step1.push($(this).val());
});
$.ajax({
type: "POST",
url: "/question/details/1",
data: {step1:step1},
error: function(data){
},
success: function(data) {
console.log(data);
}
});
});