0

演示

  $(function(){

var questions = $('#questions');

function refreshSelects(){
    var selects = questions.find('select');

    // Улучшаем элемент selects с помощью плагина Chose
    selects.chosen();

    // Ждем изменений
    selects.unbind('change').bind('change',function(){

        // Выбранная опция
        var selected = $(this).find('option').eq(this.selectedIndex);
        // Ищем атрибут data-connection
        var connection = selected.data('connection');

        // Удаляем следующий контейнер li (к=если есть)
        selected.closest('#questions li').nextAll().remove();

        if(connection){
            fetchSelect(connection);
        }

    });
}

var working = false;

function fetchSelect(val){

    if(working){
      alert('предлагаем Вам следующие товары: ')
        return false;
    }
    working = true;

    $.getJSON('ajax.php',{key:val},function(r){

        var connection, options = '';

        $.each(r.items,function(k,v){
            connection = '';
            if(v){
                connection = 'data-connection="'+v+'"';
            }

            options+= '<option value="'+k+'" '+connection+'>'+k+'</option>';
        });

        if(r.defaultText){

            // Плагин Chose требует, чтобы был добавлен пустой элемент опции
            // если нужно выводить текст "Пожалуйста, выберите"

            options = '<option></option>'+options;
        }

        // Строим разметку для раздела select

        $('<li>\
            <p>'+r.title+'</p>\
            <select data-placeholder="'+r.defaultText+'">\
                '+ options +'\
            </select>\
            <span class="divider"></span>\
        </li>').appendTo(questions);

        refreshSelects();

        working = false;
    });

}

$('#preloader').ajaxStart(function(){
    $(this).show();
}).ajaxStop(function(){
    $(this).hide();
});

// В начале загружаем выбор продукта
fetchSelect('productSelect');
});

向您展示如何选择一个标签而不是后者来以活动链接的形式给出结果?也就是,毕竟都选择了,我要得到一个结果。比如你画了它的所有参数,我需要给他一个可用产品的列表。怎么做?这段代码在哪里以及需要改变什么?向上提问

4

1 回答 1

0
<select id="select">
    <option value="" selected>Pick a Website</option>
    <option value="http://www.google.com/">Google</option>
    <option value="http://www.yahoo.com/">Yahoo</option>
</select>

<script>
    $(function(){
      // bind change event to select
      $('#select').bind('change', function () {
          var url = $(this).val(); // get selected value
          if (url) { // require a URL
              window.location = url; // redirect
          }
          return false;
      });
    });
</script>
于 2013-11-14T11:22:54.763 回答