Контекст в функции jQuery ajax - PullRequest
1 голос
/ 21 августа 2011

У меня есть эта функция jQuery для цепочек раскрывающихся списков:

  function updateCargoDestinations() {
    $.ajax({
      url: "/truckingmanagement/account/getAccountUserCargoDestinations",
      data: "id=" + this.value,
      cache: false,
      success: function(html) {
        $("#cargoDestination").html(html);
      }
    });
  }
  $(document).ready(function() {$("#account").change(updateCargoDestinations);});

Она прекрасно работает, но мне также нужна функция, которая запускается один раз при загрузке страницы, чтобы цепочка раскрывающегося списка заполнялась правильно,Я попытался установить контекст в функции следующим образом:

context: ("#account")

, но это не работает.Как я могу сделать так, чтобы эта функция запускалась один раз, когда страница загружается И запускается при изменении наблюдаемого выпадающего списка?

1 Ответ

2 голосов
/ 21 августа 2011

Установите this.value в переменной, затем проверьте undefined.Если для undefined установлено любое значение, необходимое для первоначального заполнения раскрывающегося списка.

function updateCargoDestinations() {
    var selectId = this.value;
    if (typeof selectId === "undefined") {
         selectId = "whatever_you_need_here"; 
    }
    $.ajax({
      url: "/truckingmanagement/account/getAccountUserCargoDestinations",
      data: "id=" + selectId,
      cache: false,
      success: function(html) {
        $("#cargoDestination").html(html);
      }
    });
}


$(document).ready(function() {
    updateCargoDestinations();
    $("#account").change(updateCargoDestinations);
});

Fiddle для неопределенной проверки: http://jsfiddle.net/kfJvA/1/

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