Вызов метода контроллера с использованием ajax - PullRequest
0 голосов
/ 04 апреля 2019

Я использую codeigniter Framework. Я пытаюсь вызвать метод контроллера с помощью вызова функции AJAX при событии изменения выпадающего списка. Мой код:

$(document).ready(function() {
  $("body").on('change', '#assettype_id', function(e) {
    var categoryval = $('#assettype_id :selected').val();
    // assettype_id is dropdown id. On change event of 
    // dropdown, controller method will be called

    myurl = 'http://mylocalsite/index.php/controllername/controllermethod/' + $.now();

    alert("category id = " + categoryval); // for testing
    $.ajax({
      cache: false,
      type: 'POST',
      data: {
        id: categoryval
      },
      url: myurl,
      dataType: 'html',
      success: function(data1) {
        alert("inside ajax call"); // for testing
        $('#result').html("");
        // result is a div tag used to display result//
        $("#result").html(data1);
      },
      error: function(jqXHR, textStatus, errorThrown) {
        alert('error');
      },
      complete: function(xhr, status) {
        alert("The request is complete!");
      }
    });
  });
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

Этот код отлично работает для начальных 2 или 3 изменений выпадающего списка и получения нового вывода, но после 2 или 3 выбора из выпадающего списка не будет получен новый результат, так как метод AJAX не работает.

Я поставил 2 оповещения для проверки. alert с сообщением 'category id =' вызывается при каждом событии изменения раскрывающегося списка, но alert с сообщением "внутри вызова ajax" не отображается после 2 или 3 выбора раскрывающегося списка, даже если он не попадает в раздел ошибок вызова AJAX.

Я хотел бы знать, что здесь происходит не так? Спасибо за помощь.

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