Выпадающий список, основанный на передаче одной таблицы в другие поля с помощью ajax laravel

#ajax #laravel-5

#ajax #laravel-5

Вопрос:

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

В принципе, у меня есть одна таблица (планы), у которой есть id, plan_name, price. Итак, я хочу передать цену на другой ввод.

Поэтому я ожидаю, что если я выберу один из вариантов, цена будет указана при вводе цены.

blade.php

 <div class="control-group">
                <label class="control-label">Plan</label>
                    <div class="controls">
                      <select name="plan_id" id="plan_id" class="plan" style="width:220px">
                          <option value="0">Select</option>
                          @foreach($plans as $plan)
                      <option value="{{ $plan->id}}" >{{$plan->plan_name}}</option>
                          @endforeach
                      </select>
                </div>
              </div>
              <div class="control-group">
                  <label class="control-label">Price</label>
                  <div class="controls">
                    <input class="plan_price" type="number" name="price" id="price">
                  </div>
               </div>
 

Вот ajax, который я пробовал:

 $(document).ready(function(){

    $(document).on('change','.plan',function(){
      //console.log("hmm its change");
      var plan_id=$(this).val();
      console.log(plan_id);

      $.ajax({
        type: 'get';
        url:'{!!URL::to('findPrice')!!}',
        data:{'id':plan_id},
        dataType:'json',
        success:function(data){
          console.log("price");
          console.log(data.price);

        a.find('.plan_price').val(data.price);
        },error:function(){

        }
      })
    })
  });

 

в моем контроллере у меня есть эта функция:
Я не знаю, правильно ли это в части where.

 public function findPrice(Request $request){

        $p = Plan::select('price')->where('id',$request->id)->first();
        return response()->json($p);
    }

 

Маршрут::

 Route::get('/findPrice','SubscriptionController@findPrice');
 

Комментарии:

1. Вы отправляете data:{'id':price}, свой AJAX-запрос, но я не вижу, где вы определяете price . Должно ли это быть data:{'id':plan_id}, ? Ваш запрос и ответ выглядят нормально, кроме этого.

2. Я пытался, но все та же ошибка, которую я получил с самого начала :: Uncaught SyntaxError: неожиданный токен ;