Php 验证工作不正常-即使向字段中插入值,该字段似乎也是必需的
当用户单击“转到步骤3”时,它会显示“Php 验证工作不正常-即使向字段中插入值,该字段似乎也是必需的,php,laravel,Php,Laravel,当用户单击“转到步骤3”时,它会显示“console.log(errorsHtml); “这: 换成这个试试 public function storePaymentMethods(Request $request, $id, $slug = null){ $validatedData = $request->validate([ 'payment_method' => 'required', ]); return response()-&g
console.log(errorsHtml);
“这:
换成这个试试
public function storePaymentMethods(Request $request, $id, $slug = null){
$validatedData = $request->validate([
'payment_method' => 'required',
]);
return response()->json([
'success' => true,
'message' => 'success'
], 200);
}
如何在ajax请求中显示这一点?这样就不会显示“公共函数storePaymentMethods(Request$Request,$id,$slug=null,Validator$Validator){dd($Request)…”。使用chrome控制台网络模式,您可以检查在网络预览中传递或不传递的PaymentMethod变量是否只是显示前一步(步骤1)字段引入的值。付款方法不显示,只显示上一步的字段。您使用的是哪一版本的laravel?laravel 5.5。谢谢,但仍然显示“{消息:“给定的数据无效。”,…}错误:{付款方法:[“付款方法字段是必需的。”]}消息:“给定的数据无效。”您是否检查了PaymentController和payment.blade.php中的PaymentMethods拼写是否相同?是否检查了PaymentController和payment.blade.php中的PaymentMethods拼写是否相同。如果没有出现任何验证错误,则在网络选项卡中选择storePaymentMethods时会显示“加载响应数据失败”。您能否通过更新问题中的错误图像
<form method="post" id="step2form" action="">
<h6>Payment method</h6>
<div class="form-group">
<div class="form-check">
<input class="form-check-input" type="radio" name="payment_method" value="option1">
<label class="form-check-label d-flex align-items-center" for="exampleRadios1">
<span class="mr-auto">Payment method 1</span>
</label>
</div>
<br>
<div class="form-check">
<input class="form-check-input" type="radio" name="payment_method" value="option1">
<label class="form-check-label d-flex align-items-center" for="exampleRadios1">
<span class="mr-auto">Payment method 2</span>
</label>
</div>
</div>
<br>
<div class="text-right">
<button type="button" href="#step3" data-toggle="tab" role="tab"
class="btn btn-outline-primary prev-step">
Go back to step 2
</button>
<input type="submit" href="#step2" id="goToStep3"
class="btn btn-primary btn float-right next-step"
value="Go to step 3"/>
</div>
</form>
$('#goToStep3').on('click', function (event) {
event.preventDefault();
var custom_form = $("#" + page_form_id);
$.ajax({
method: "POST",
url: '{{ route('products.storePaymentMethods', compact('id','slug') ) }}',
data: custom_form.serialize(),
datatype: 'json',
success: function (data, textStatus, jqXHR) {
},
error: function (data) {
var errors = data.responseJSON;
var errorsHtml = '';
$.each(errors['errors'], function (index, value) {
errorsHtml += '<ul class="alert alert-danger mt-3"><li class="text-danger">' + value + '</li></ul>';
console.log(errorsHtml);
});
$('#response').show().html(errorsHtml);
}
});
public function storePaymentMethods(Request $request, $id, $slug = null, Validator $validator){
$validator = Validator::make($request->all(),[
'payment_method' => 'required',
]);
if($validator->passes())
{
return response()->json([
'success' => true,
'message' => 'success'
], 200);
}
$errors = $validator->errors();
$errors = json_decode($errors);
return response()->json([
'success' => false,
'errors' => $errors
], 422);
}
public function storePaymentMethods(Request $request, $id, $slug = null){
$validatedData = $request->validate([
'payment_method' => 'required',
]);
return response()->json([
'success' => true,
'message' => 'success'
], 200);
}