@dev400

Почему этот код не работает на jquery 1.8.3?

На jquery 1.3.1 работает отлично. Нашел эту статью https://habrahabr.ru/post/149403/, но не нашел устаревших конструкций в коде. В консоли нет ошибок, просто ничего не происходит. Что именно в нем не так?

(function($){

  $.fn.clearSelect = function() {
	  return this.each(function(){
		  if(this.tagName=='SELECT') {
		      this.options.length = 0;
		      $(this).attr('disabled','disabled');
		  }
	  });
  }
  $.fn.fillSelect = function(dataArray) {
	  return this.clearSelect().each(function(){
		  if(this.tagName=='SELECT') {
			  var currentSelect = this;
			  $.each(dataArray,function(index,data){
				  var option = new Option(data.text,data.value);
				  if($.support.cssFloat) {
					  currentSelect.add(option,null);
				  } else {
					  currentSelect.add(option);
				  }
			  });
		  }
	  });
  }
})(jQuery);


$(document).ready(function(){
    // выбор автомобиля
    function adjustAuto(){
        var countryValue = $('#country').val();
        var tmpSelect = $('#auto');
        if(countryValue.length == 0) {
            tmpSelect.attr('disabled','disabled');
            tmpSelect.clearSelect();
            adjustModel();
        } else {
            $.getJSON('cascadeSelectAuto.php',{country:countryValue},function(json) { tmpSelect.fillSelect(json).attr('disabled',''); adjustModel(); });

        }
    }
    // выбор модели
    function adjustModel(){
        var countryValue = $('#country').val();
        var autoValue = $('#auto').val();
        var tmpSelect = $('#model');
        if(countryValue.length == 0||autoValue.length == 0) {
            tmpSelect.attr('disabled','disabled');
            tmpSelect.clearSelect();
        } else {
            $.getJSON('cascadeSelectModel.php',{country:countryValue,auto:autoValue},function(data) { tmpSelect.fillSelect(data).attr('disabled',''); });
        }
    }




    $('#country').change(function(){

        adjustAuto();

    }).change();
    $('#auto').change(adjustModel);
    $('#model').change(function(){
        if($(this).val().length != 0) { alert('Выбор сделан!'); }
    });
});
  • Вопрос задан
  • 164 просмотра
Пригласить эксперта
Ответы на вопрос 1
litlleidiot
@litlleidiot
Фронт-Энд разработчик
Зачем бросать весь код? Удаляй по части и смотри что работает а что нет и выявляй проблему
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы