繁体   English   中英

当我再次单击按钮时,Ajax 请求再次显示数据

[英]Ajax request showing data again when i click again on button

我正在研究 laravel 并使用 ajax 从数据库中获取数据并通过单击按钮在弹出窗口中显示它。

问题是一旦我单击按钮,它就会在弹出窗口中显示我的数据。 但是当我关闭并再次单击该按钮时,它会显示弹出双数据。

Ajax 代码:

<script>
  function getMessage(id) {
    $.ajax({
      url: '/gethandlers/' + id,
      type: 'GET',
      success: function (resp) {

        var trHTML = '';
        for (i = 0; i < resp.length; i++) {
          trHTML +=
              '<tr><td>'
              + resp[i]['name']
              + '</td></tr>';
        }

        $('#tBody').append(trHTML);
        $('#myModal').modal('show');

        console.log(resp[0]['name']);

      },

    });
  }
</script>

路线:

Route::get('/gethandlers/{id}', 'ClientsController@gethandlers');

controller中的方法:

public function gethandlers($id)
{
    $data = Multiplehandler::select('handler_id')->where('user_id', $id)->get();
    $total_ids = count($data);
    $handler_names = [];

    foreach ($data as $datas) {
        $handler_names [] =Clients::select('name')->where('id', $datas->handler_id)->first();
    }

    return $handler_names;
}

您正在使用 append 但这不是替换选择器的数据,它只是“附加”。

$('#tBody').append(trHTML);

利用

$('#tBody').html(trHTML);

将解决您的问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM