无法从 Laravel 中的下拉列表中保存表列值

我正在使用 Laravel 7 和 PHP 7.4。


我正在尝试使用 ajax 在我的表单中创建一个依赖下拉列表。我正在将ajax 响应中的column_id和列发送到我的下拉列表。我的下拉菜单工作得很好,但我的数据库查询或 ajax 响应出现混乱。我的下拉列表显示列的值,但是当我尝试保存到数据库中时,它只保存列的“Id”而不是值。


我只想将column_id和列都发送到我的下拉列表,但仅将值保存到数据库中。


刀刃


<form action="{{route('form_for_private_sellers')}}>

    <div class="form-group">

      <select name="make" id="make" data-dependent="model">

       <option value="">Select Make</option>

       <option value="254">Abarth</option>

      </select>

    </div>

    

    <div class="form-group">

     <select name="model" id="model">

       <option selected value="">Select Model*</option>

      </select>

    </div>

</form>

JavaScript


$("#make").change(function()

{

    var id=$(this).val();

    var make_id = id;


    var dependent = $(this).data('dependent');

    var _token = $('input[name="_token"]').val();


    $.ajax({

        url:"{{ route('fetchModel') }}",

        method:"POST",

        data:{make_id:make_id, _token:_token,dependent:dependent},

        success:function(result)

        {

            $('#'+dependent).html(result);

        }

    });

});

控制器


public function fetchModel(Request $request)

{

    $get_make_id = $request->get('make_id');

    $dependent = $request->get('dependent');



    $fetch_model = DB::table('auto_databases_one')

        ->select('model','model_id')

        ->distinct()

        ->where('make_id', '=', $get_make_id)

        ->where(function ($query) {

            $query->orWhere('is_active', '=', '1');

        })

        ->orderBy('model', 'ASC')

        ->get();


    $show_model = '<option value="">Select ' . ucfirst(dependent) . '</option>';

    foreach ($fetch_model as $row) {

        $show_model .= '<option value="' . $row->model_id . '">' . $row->model . '</option>';

    }

    echo $show_model;

}


public function form_for_private_sellers(Request $request)

{

      $store_seller = new Sellers();

    $store_seller->make = $request['make'];

    $store_seller->model = $request['model'];

}


动漫人物
浏览 50回答 1
1回答

有只小跳蛙

我假设有一个带有 的按钮id="save"。$("#save").click(function(e){&nbsp; &nbsp; e.preventDefault();&nbsp; &nbsp; const make = $("#make option:selected").val();&nbsp; &nbsp; const model = $("#model option:selected").val();&nbsp; &nbsp; const _token = $('input[name="_token"]').val();&nbsp; &nbsp; $.ajax({&nbsp; &nbsp; &nbsp; &nbsp; url:"{{route('form_for_private_sellers')}}",&nbsp; &nbsp; &nbsp; &nbsp; method:"POST",&nbsp; &nbsp; &nbsp; &nbsp; data:{make, _token, model},&nbsp; &nbsp; &nbsp; &nbsp; success:function(result)&nbsp; &nbsp; &nbsp; &nbsp; {&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; console.log('all done');&nbsp; &nbsp; &nbsp; &nbsp; }&nbsp; &nbsp; });});public function form_for_private_sellers(Request $request){&nbsp; &nbsp; $store_seller = new Sellers();&nbsp; &nbsp;&nbsp;&nbsp; &nbsp; //you may need to adjust this part as I do not know your properties called.&nbsp; &nbsp; $store_seller->make = $request->make;&nbsp; &nbsp; $store_seller->model = $request->model;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp; $store_seller->save();}
打开App,查看更多内容
随时随地看视频慕课网APP