Сладкая Настороженность с Ларавелом - PullRequest
0 голосов
/ 05 ноября 2019

Я пытаюсь сделать простое всплывающее окно, используя Sweet Alert, в основном я хочу иметь возможность проверить, есть ли у пользователя какие-либо предыдущие нарушения в его записи. Я сделал метод контроллера, который проверяет это, и, на мой взгляд, яЯ использую Ajax для запуска метода. Я использую библиотеку JS Realrashid Sweet Warning. Вот мое мнение:

@include('sweetalert::alert')

<div class="col-xs-4 col-sm-4 col-md-4">
<div class="form-group">
<strong>Customer ID:</strong>
<input class="form-control" type="text" name="custidno" id='cust' required autocomplete="off" onkeypress="myFunction()"  placeholder="Customer ID" >
<button onclick="CheckViolation()"class="btn-info"type="button">Check for Violation</button>
</div>
</div>

Сценарий

function CheckViolation()
      {
        var customerid= document.getElementById("cust").value;
        var url = "{{ url('violationcheck') }}";
        var xhttp = new XMLHttpRequest();
      xhttp.onreadystatechange = function() {
        if (this.readyState == 4 && this.status == 200) {
        }
      };
      xhttp.open("GET", url + "?" +"custidno=" + customerid, true);
      xhttp.send();
    }

и метод контроллера:

        public function violationcheck(Request $request)
    {
      $custidno = customer::select("id")
      ->where('name',$request->custidno)
      ->first();
      $checked = DB::table('violations')
      ->select('severity',DB::raw('count(*) as total'))
      ->where("customer_id",$custidno->id)
      ->where("status",1)
      ->groupBy('severity')
      ->first();
      if(empty($checked))
      {
        Alert::info('Info Message', 'No Violation found');


      }else{
          $msg="Violation found";
          Alert::info('Info Message', 'Violation found');


            }
            return view('assignees.create');
      }

при нажатии «Проверить на нарушение ничего не происходит, при просмотре страницы загружается в браузер, но всплывающее окно не появляется ...

1 Ответ

0 голосов
/ 06 ноября 2019

это не сработает, потому что вы используете AJAX, а Alert использует сеанс для отображения диалога Sweetalert

...