【问题标题】:ajax, showing data but can't find it if when using searchajax,显示数据但在使用搜索时找不到它
【发布时间】:2019-12-03 16:25:47
【问题描述】:

I'm using the code below to show countries and when select any country I will get the regions of this country, for now all work fine, but when I get the regions and using the search in the div can't get它因为 div 是空的,但是如果我选择任何区域,我会得到它的 id 警报,那么如何选择和搜索区域,请看屏幕截图https://imgur.com/VbHZOFK 我使用 jQuery Plugin For Bootstrap Select with Search – BootstrapSelect 链接https://www.codehim.com/others/jquery-plugin-for-bootstrap-select-with-search-bootstrapselect/ 我不知道如何找到搜索 jquery 代码,因为它位于 jquery 文件中的某个位置(文件和代码太多)

阿贾克斯:

    $(document).on('click','#countrylist li', function(){

        $.ajax({
            url:'/getRegions',
            type: 'GET',
            data: 'country_id='+$(this).data('value'),
            beforeSend: function( xhr )
            {

                Command: toastr["info"]("Uploading Data.....", "Processing")
            },

            statusCode: {
                422: function( result) {
                    console.log(result);
                    $('#error').html(result.responseText);
                    $('#static').modal('show');
                }
            },
            success: function(data){
                toastr.clear();

                var select = $('#regionlist');
                $('#regionlist').html('');
                select.empty(); 

     $(document).on('click', '#regionlist li', function(e) {
   alert($(this).data('value'));
     });

        $.each(data, function(index,element) {
                    select.append("<li data-filter='"+ element.name +"' data-value='"+ element.id +"'>" + element.name + "</li>");
                });
            },
            error:function(data){
            }
        });

    });

HTML:

  <div id="bts-ex-5" class="selectpicker" data-clear="true" data-live="true">
 <button data-id="prov" type="button" class="btn btn-lg btn-block btn-default dropdown-toggle">
      <span class="placeholder">Select Region</span>
      <span class="caret"></span>
       </button>

       <div class="dropdown-menu">
       <div class="live-filtering" data-clear="true" data-autocomplete="true" data-keys="true">

      <label class="sr-only" for="input-bts-ex-5">Search in the list</label>

      <div class="search-box">
       <div class="input-group">
          <span class="input-group-addon" id="search-icon5">

          <span class="fa fa-search"></span>
         <a href="#" class="fa fa-times hide filter-clear">
        <span class="sr-only">Clear filter</span></a>
          </span>
        <input type="text" placeholder="Search in the list" id="region_input" class="form-control live-search" aria-describedby="search-icon5" tabindex="1" />

     <div class="list-to-filter">
       <ul class="list-unstyled">
        <li class="optgroup">
         <span class="optgroup-header">List of Regions <span class="subtext"></span></span>
         <ul id="regionlist" class="list-unstyled">
       @if(isset($region))
                @foreach($region as $row)
                    @if(isset($data->region_id))
                        @if($row->id == $data->region_id)
           <li class="filter-item items" data-filter="{{ $row->name }}" data-value="{{ $row->id }}">{{ $row->name }}</li>
      @else
            <li class="filter-item items" data-filter="{{ $row->name }}" data-value="{{ $row->id }}">{{ $row->name }}</li>
  @endif
                    @else
            <li class="filter-item items" data-filter="{{ $row->name }}" data-value="{{ $row->id }}">{{ $row->name }}</li>

      @endif
        @endforeach
            @endif 
   </ul>
      </li>
          </ul>

     <div class="no-search-results">
     <div class="alert alert-warning" role="alert"><i class="fa fa-warning margin-right-sm"></i>No entry for <strong>'<span></span>'</strong> was found.</div>
     </div>
      </div>
    </div>
         </div>
           </div>

【问题讨论】:

  • 搜索的jquery代码在哪里?
  • 我不知道我是从这里下载的,所以代码会在javascript文件中的某个地方codehim.com/others/…
  • @Mr.Gandhi 请问有什么解决办法吗?
  • 在输入搜索的keyup上,做ajax调用。
  • 你能解释更多吗???

标签: php jquery laravel


【解决方案1】:

我在这里找到了解决方案: 成功的jQuery:

  $("#regionlistresult").html(data.regionlist);

在控制器中:

    public function getRegions(Request $request)
  {

 $region=Region::getRegionsByCountryID($request->input('country_id'));

   $regionlist = view("include.regionlist",compact('region'))->render();

   return response()->json([
  'regionlist' => $regionlist
 ]);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-04
    • 1970-01-01
    • 2016-02-21
    • 1970-01-01
    • 2021-05-18
    • 2019-05-01
    相关资源
    最近更新 更多