Я использую плагин шага jquery с валидатором формы, чтобы проверить, вставлен ли ввод (не пустой в требуемом столбце) и проверить ответ ajax (проверьте значение из бэкэнда).
Цель: нажмите «Далее» и перейдите к шагу 1 мастера (из шага 0) после ответа AJAX (возвращением true)
Но я застрял в ajax return true, но все равно не могу перейти к следующему шагу. Даже если я попытаюсь ввести «значение» на входе, я также не смогу продолжить.
Вот код jquery:
var form = $("#redeem-form").show();
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="_token"]').attr('content')
}
});
form.steps({
headerTag: "h2",
bodyTag: "section",
transitionEffect: "slideLeft",
labels: {
finish: "Confirm and Redeem"
},
onStepChanging: function (event, currentIndex, newIndex)
{
var x = $("#input_access_code").val();
console.log(x);
if (currentIndex === 0)
{
$.ajax({
type: "GET",
url: "{{route('checkRedeem')}}",
data: {'access_code':$("#input_access_code").val()},
success: function(data)
{
let datas = data;
console.log(datas);
if(datas == 'no'){
return false;
}
else{
return true;
}
}
});
}
},
onStepChanged: function (event, currentIndex, priorIndex){...},
onFinishing: function (event, currentIndex){...},
onFinished: function (event, currentIndex){...}
});
Вот контроллер в laravel:
public function checkRedeemCode(Request $request)
{
$redeemCode = $request->access_code;
if($redeemCode == "gotvalue"){
return $redeemCode;
}
else{
return 'no';
}
}