Sunday, July 5, 2020

select Area to city in laravel ??

web.php :

Route::get('get-sub-cat-list', 'Admin\BlogPostController@getSubCategoryList')->name('get-sub-cat-list');


controller :

public function getSubCategoryList(Request $request){

          $subCatList= SubCategory::where("category_id",$request->category_id)->orderBy('name','ASC')->pluck('id','name');
          return response()->json($subCatList);
    }



public function store(Request $request)
    {
       $post->category_id     = $request->category;
        $post->sub_cat_id      = $request->sub_category_id;
}


Model:

public static function selectSubCategoryList($value) {
        $result = DB::table('blog_sub_categories')->select('*')->where('category_id', $value)->get();
        return $result;
    }


public function edit($id)
 
{
     $subcategories= BlogPost::selectSubCategoryList($post->category_id);
}


public function update(Request $request, $id)
   {
       $post->category_id     = $request->category;
        $post->sub_cat_id      = $request->sub_category_id;
}


create.balte.php:

<div class="row col-md-12">
                            <div class="col-md-6">
                                <div class="form-group">
                                    <label class="d-block font-weight-semibold">Post Category<i class="text-danger">*</i></label>
                                    <select id="category_id" name="category" data-placeholder="Select Category" class="form-control form-control-select2" data-fouc>
                                      <option disabled="" selected value>Select Category</option>
                                      @foreach($categories as $category)
                                        <option value="{{$category->id}}" {{ old('category') == $category->id ? 'selected' : '' }}>
                                           {{$category->name}}
                                        </option>
                                      @endforeach
                                    </select>
                                    <span class="text-danger"> {{ $errors->first('name') }}</span>
                                </div>
                            </div>

                            <div class="col-md-6">
                                <div class="form-group">
                                    <label class="d-block font-weight-semibold">Sub Category<i class="text-danger"></i></label>
                                    <select name="sub_category_id" id="sub_category_id" class="form-control form-control-select2" data-fouc>
                                      <option  value>--Select Sub Category--</option>
                                    </select>
                                   
                                    <span class="text-danger"> {{ $errors->first('name') }}</span>
                                </div>
                            </div>

                          </div>


<script type="text/javascript">
     $('#category_id').change(function(){

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

    if(catID){
        $.ajax({
           type:"GET",
           url:"{{route('get-sub-cat-list')}}?category_id="+catID,
           success:function(res){             
            if(res){
                $("#sub_category_id").empty();
                $("#sub_category_id").append('<option value="">Select Sub Category</option>');
                $.each(res,function(key,value){
                    console.log(value);
                    $("#sub_category_id").append('<option value="'+value+'">'+key+'</option>');
                });
         
            }else{
               $("#sub_category_id").empty();
            }
           }
        });
    }else{
        $("#sub_category_id").empty();
     
    }   
   });
</script>


Or
<script type="text/javascript">
        $('#district').on('change', function(){
            var dist_id = $('#district option:selected').val();
            if (dist_id==1) {
                $('#areaDiv').removeClass('d-none');
                var urll="{{ url('/get_area') }}/"+dist_id;
                $.ajax({
                    url:urll,
                    success: function(data){
                        if (data !='') {
                            $("#area").html(data);
                        }
                    },
                    error: function (data) {
                    }
                });
            }else{
                $('#areaDiv').addClass('d-none');
                var area = $('#area');
                area[0].selectedIndex = -1;
            }
            
        });

    </script>


edit.blade.php

<div class="row col-md-12">
                            <div class="col-md-6">
                                <div class="form-group">
                                    <label class="d-block font-weight-semibold">Post Category<i class="text-danger">*</i></label>
                                    <select id="category_id" name="category" data-placeholder="Select Category" class="form-control form-control-select2" data-fouc>
                                      <option disabled="" selected value>Select Category</option>
                                      @foreach($categories as $category)
                                        <option value="{{$category->id}}" @if($category->id == $post->category_id) {{ 'selected' }} @endif>
                                           {{$category->name}}
                                        </option>
                                      @endforeach
                                    </select>
                                    <span class="text-danger"> {{ $errors->first('category') }}</span>
                                </div>
                            </div>

                            <div class="col-md-6">
                                <div class="form-group">
                                    <label class="d-block font-weight-semibold">Sub Category<i class="text-danger"></i></label>
                                    <select name="sub_category_id" id="sub_category_id" class="form-control form-control-select2" data-fouc>
                                      <option  value>--Select Sub Category--</option>
                                     
                                        @if ($subcategories)
                                        @foreach ($subcategories as $val)
                                        ?>
                                        <option value=" {{ $val->id }}" @if ($val->id == $post->sub_cat_id)                                                       {{'selected'}}
                                        @endif>{{ $val->name }}
                                         </option>
                                        @endforeach
                                        @endif
                                     
                                    </select>
                                   
                                    <span class="text-danger"> {{ $errors->first('name') }}</span>
                                </div>
                            </div>

                          </div>

No comments:

Post a Comment

Ajax load lage with laravel.

 step-1:  HTML <div class="row">                     <div class="col-lg-12">                           <d...