根据一个表使用ajax laravel传递到其他字段的下拉列表

时间:2019-04-18 12:31:49

标签: 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');

0 个答案:

没有答案