<div>刷新数据后不显示 Ajax ''



我在更新数据库中的数据后尝试更新<div>,但是<div>令人耳目一新后,它不会显示数据。这是我的代码:

<div class="tab-pane active" id="receivedHere" style="width: 100%;">
  @foreach($compose as $compose)
  @if($compose->active == 1)
    ......
     <input type="hidden" id="id" value="{{ $compose->id }}">
     <img src="/public/images/EyePublic.svg" 
     onclick="changeComposer('0','{{ $compose->id }}')"></span>
    ......
  @else($compose->active == 0)
   ....
       <input type="hidden" id="id" value="{{ $compose->id }}">
       <img src="/public/images/EyePrivate.svg" 
       onclick="changeComposer('1','{{ 
       $compose->id }}')"></span>
    .....
  @endif
 @endforeach
</div>

我的ajax代码

function changeComposer(argument, id) {
  var link = "{{ URL::to('/') }}/public/images/settingLoader.gif";
  document.getElementById('receivedHere').innerHTML = '<center><img 
  src="'+link+'"></center>'; //for replacing the div to img after click and image will remove after ajax success.
  $.ajax({
    type: "POST",
    url: "{{URL::to('/')}}/updateComposer",
    data: {id : id, update : argument},
    success: function(){
      $("#receivedHere").load(" #receivedHere");
    }
  });
 }

更新的部分正在工作,但是成功后,重新加载div并采用更新的数据未显示...任何建议?

我更新的控制器是

public function updateComposer(Request $request) {
    $user_id = UserGratitude::where('user_id', Auth::user()->id)->first();
    if($user_id){
        UserGratitude::where('id', $request->id)
            ->update([
                'is_active' => $request->update
            ]);
        return response('success', 200);
    }
}

如果要过滤到页面的一部分,则需要在.load()的呼叫中使用一个实际URL。
您可以使用位置获取当前页面的URL。

$("#receivedHere").load(location.href + " #receivedHere");

您可以使用 html方法

$("#receivedHere").html('<center><img src="'+link+'"></center>')

这是JS Flow

//show loading is in progress    
$("#receivedHere").html('<center><img src="'+link+'"></center>')
//make ajax request
$.ajax({
    type: "POST",
    url: "{{URL::to('/')}}/updateComposer",
    data: {id : id, update : argument},
    success: function(data){
        //parse your data if needed
        //show data by updating DOM
        $("#receivedHere").html("<p>Received data</p>");
    }
  });
 }

最新更新