Как остановить функцию события blur () для запуска дважды? - PullRequest
0 голосов
/ 20 июня 2019

Я пытаюсь получить записи из базы данных, используя функцию размытия. Есть два поля ввода, где эта функция срабатывает. Я использовал разные имена, переменные, javascript, контроллер, использующий laravel для извлечения записей. Я могу получить записи через ajax и успешно открывает модал. Когда модальное всплывающее окно при срабатывании функции размытия, оно также запускает функцию для второго поля.

Я просто хочу запустить модал в соответствии с полем, где размытие срабатывает, а не дважды.

//input field: originS

<script type="text/javascript">
        $(document).ready(function(){
          var  origin = "";
          var _token = "";
          var ovalue = "";
        $('#originS').blur(function(){
           ovalue = "";
           origin = $(this).val();
           _token = $('input[name="_token"]').val();
          $.ajax({
              type: 'POST',
              url: '{{ route('pagescontroller.fetchOrigin') }}',
              data:{origin:origin, _token:_token},
              success: function(response){

                if(response){
                $("#originSelect").modal('show');
                console.log(response);
                $(".result").html(response);

                 $(document).on('change', '#selectSuburb', function () {

                    ovalue =   $(this).val();
                   if ($(this).is(':checked')) {
                   $('#originS').val(ovalue);
                   $("#originSelect").modal('hide');
                   $this.die('blur');
                 }

                 });

                 $('#originSelect').on('hidden.bs.modal', function (e) {
                       if (ovalue == "") {
                       $("#originS").val('');
                       $(".result").html(response);
                      }
                 });


               }
              },
          });
        });
        });
        </script>

//input field: destS

    </script>

    <script type="text/javascript">
    $(document).ready(function(){
    var  dest = "";
    var _token = "";
    var dvalue = "";
    $('#destS').blur(function(){
      dvalue = "";
      dest = $(this).val();
       _token = $('input[name="_token"]').val();
      $.ajax({
          type: 'POST',
          url: '{{ route('pagescontroller.fetchdest') }}',
          data:{dest:dest, _token:_token},
          success: function(response){
            if(response){
            $("#destSelect").modal('show');
            console.log(response);
            $(".dresult").html(response);

             $(document).on('change', '#selectSuburbdest', function () {

                dvalue =   $(this).val();
               if ($(this).is(':checked')) {
               $('#destS').val(dvalue);
               $("#destSelect").modal('hide');
               $this.die('blur');
             }

             });

             $('#destSelect').on('hidden.bs.modal', function (e) {
                   if (dvalue == "") {
                   $("#destS").val('');
                   $(".dresult").html(response);
                  }
             });


           }
          },
      });
    });
    });
    </script>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...