Ajax在单击按钮后未提交表单

Ajax在单击按钮后未提交表单,ajax,laravel,Ajax,Laravel,我这里有一个表单,我试图使用Ajax将数据发送到控制器,但是有些东西一直失败,Ajax根本不起作用。我正在尝试插入一个问题,并通过表单将测验id发送给管理员 <div id="form_two" class="container col-sm-8"> <div class="row card border-secondary align-items-center"> <div cla

我这里有一个表单,我试图使用Ajax将数据发送到控制器,但是有些东西一直失败,Ajax根本不起作用。我正在尝试插入一个问题,并通过表单将测验id发送给管理员

<div id="form_two" class="container col-sm-8">
    <div class="row card border-secondary align-items-center">
        <div class="form-group col-sm-7">
            <br><br>
            <form id="report">
                @csrf
                <input type="hidden" name="quizTest" value="{{ \Illuminate\Support\Facades\Session::get('testID') }}">
                <input class="form-control" id="question" type="text" name="question" placeholder="Question" size="40" required><br>
                <input class="form-control" id="answerA" type="text" name="answerA" placeholder="Option A" size="40" required><br>
                <input class="form-control" id="answerB" type="text" name="answerB" placeholder="Option B" size="40" required><br>
                <input class="form-control" id="answerC" type="text" name="answerC" placeholder="Option C" size="40" required><br>
                <input class="form-control" id="answerD" type="text" name="answerD" placeholder="Option D" size="40" required><br>
                <input class="form-control" id="correct_answer" type="text" name="correct_answer" placeholder="Correct Answer" size="40" required><br>
                <button class="btn btn-primary" id="registraion-form" >ADD A QUESTION </button>
            </form>
        </div>
    </div>
</div>

仅仅因为您在表单中添加了
@csrf
,并不意味着您在所有方面都可以

由于AJAX正在提交POST请求,因此该请求也应该带有csrf令牌,否则它将无法工作


例如,检查

谢谢您的回答,Berto,但并非如此,CSRF验证不排除路径url。p、 s我已经添加了csrf,但仍然是相同的结果
没有排除路径url进行csrf验证
是,这就是问题所在您正在向需要CSRF令牌验证的端点发送post请求我正在做相反的操作实际上我正在向不需要CSRF令牌验证的端点发送post请求引用您的话:
路径url未被排除
。这意味着端点包含在需要验证的端点中,请尝试将CRSF令牌添加到AJAX中,然后重试
$('#registraion-form').click(function (e) {
    e.preventDefault();
    let question = $("input[name=question]").val();
    let answerA = $("input[name=answerA]").val();
    let answerB = $("input[name=answerB]").val();
    let answerC = $("input[name=answerC]").val();
    let answerD = $("input[name=answerD]").val();
    let quizTest = $("input[name=quizTest]").val();
    let correct_answer = $("input[name=correct_answer]").val();
    $.ajax({
        type: "POST",
        url: "/test",
        data : {
            quizTest: quizTest,
            question : question,
            answerA:answerA,
            answerB:answerB,
            answerC:answerC,
            answerD:answerD,
            correct_answer : correct_answer
        },
        success: function(response) {
            console.log(response);
            console.log(response.message);
            $("#report")[0].reset();
        },
        error : function (error) {
            console.log(error);
        }
    })
})