Обработка данных в select

KODEAK

Полезный
Регистрация
11 Апр 2009
Сообщения
172
Реакции
16
Доброго всем времени, подскажите пожалуйста как отправить запрос на сервер с полученным значение из option и из полученного ответа составить другой select

пока что имею небольшую наработку
Код:
 <select name="InputBrends" id="InputBrends" class="form-control">                           
                            <option value="1"> 1</option>
<option value="2"> 2</option>                                                        
                        </select>
и
Код:
                    <script type="text/javascript">
                    function displayModels() {
                      var singleValues = $("#InputBrends").val();
                    }
                    
                    $("select").change(displayModels);
                    </script>
Спасибо
 
А что имеем и что надо составить? Можно пример? Не очень понятно

Отправить:
PHP:
$.post("ajax.php?rand=" + Math.random(), { singleValues: singleValues}).done(function(data){
            alert('Все прошло хорошо. Ответ сервера: '+data);
        }).fail(function(data){
            alert('Что-то пошло не так!');
        });
 
Пример кода, который работает на jquery-1.11.0:
Код:
    <script src="//code.jquery.com/jquery-1.11.0.min.js" type="text/javascript"></script>
    <script>
    function displayModels(){
        var value = $('#InputBrends').val();
        var request = $.ajax({
          url: "ajax.php",
          type: "POST",
          data: value,
          dataType: "json"
        });
        request.done(function(data) {
            var select = $('#OutputBrends');
              for (var i = 0; i < data.length; i++) {
                  var o = new Option(i+1,data[i]);
                  select.append(o);
              };
        });
        request.fail(function( jqXHR, textStatus) {
              alert( "Request failed: " + textStatus);
        });
    }
    $(document).ready(function(){
    $("select").change(displayModels);
    });
    </script>
</head>
<body>
<select name="InputBrends" id="InputBrends" class="form-control">
    <option>1</option>
    <option>2</option>                                     
</select>
<select name="OutputBrends" id="OutputBrends" class="form-control">
Код:
<?php
$rawPost = file_get_contents('php://input');
$data = array();
if($rawPost){
    $data[] = (int) $rawPost;
    $data[] = $rawPost+1;
    $data[] = $rawPost+2;
    $data[] = $rawPost+3;
}
// Заголовки ответа
header('Content-type: text/plain; charset=utf-8');
header('Cache-Control: no-store, no-cache');
header('Expires: ' . date('r'));
// Возвращаем
echo json_encode($data);
?>
 
готовый вариант, с очисткой если поменять значение 1 селекта
Код:
    <script>
    function displayModels(){
        var value = $('#InputBrends').val();
        var request = $.ajax({
          url: "<?php echo \Uri::create('test/s/'); ?>" + value,
          type: "GET",
          dataType: "json"
        });
        request.done(function(data) {
            $("#OutputBrends").empty();
           
            $.each(data, function(key, value) {               
                var GG = new Option(value.cs_id);
               
                $('#OutputBrends').append(
                    $('<option value="'+value.cs_category+'">'+value.cs_name+'</option>')
                );
               
               
            });          
           

        });
        request.fail(function( jqXHR, textStatus) {
              alert( "Request failed: " + textStatus);
        });
    }
    $(document).ready(function(){
        $("select").change(displayModels);
    });
    </script>
 
столкунулся с проблемой что почему то выбирается постоянно в #OutputBrends первое значение как бы я не менял =( в чем ошибка ?
 
Поменяй
Код:
$("select").change(displayModels);
На
Код:
$("InputBrends").change(displayModels);
 
Назад
Сверху