layuiでの曖昧な検索はどのように実装するのですか?

Layuiの中では、ぼかし検索を実現するには2つの方法があります。

  1. 後段インターフェースを使用して曖昧検索を実装する:Layuiのデータテーブルコンポーネントを使用し、url属性を後段インターフェースのアドレスに設定し、whereパラメータを設定して曖昧検索条件を渡すことができます。後段インターフェースはこの条件に基づいて曖昧検索を実行し、結果をフロントエンドに表示します。

サンプルコード:

layui.use('table', function(){
  var table = layui.table;
  
  table.render({
    elem: '#demo',
    url: '/api/data', // 后端接口地址
    where: {
      keyword: '关键字' // 模糊查询的条件
    },
    cols: [[
      {field: 'id', title: 'ID'},
      {field: 'name', title: '姓名'},
      {field: 'age', title: '年龄'}
    ]]
  });
});

バックエンドのAPIサンプル(Node.jsとExpressフレームワークを使用):

app.get('/api/data', function(req, res){
  var keyword = req.query.keyword; // 获取前端传递的模糊查询条件
  // 根据关键字进行模糊查询
  var result = data.filter(function(item){
    return item.name.includes(keyword);
  });
  res.json(result);
});
  1. Layuiのデータテーブルコンポーネントでは、lay-filter属性を使用してフロントエンドフィルターを設定し、テーブルデータの変更を監視して、コールバック関数内で曖昧検索を実行できます。

サンプルコード:

layui.use('table', function(){
  var table = layui.table;
  
  table.render({
    elem: '#demo',
    url: '/api/data', // 后端接口地址
    cols: [[
      {field: 'id', title: 'ID'},
      {field: 'name', title: '姓名'},
      {field: 'age', title: '年龄'}
    ]],
    done: function(res, curr, count){
      // 监听数据渲染完成的事件
      // 获取输入框的值
      var keyword = $('#keyword').val();
      // 进行模糊查询
      var result = res.data.filter(function(item){
        return item.name.includes(keyword);
      });
      // 渲染过滤后的数据
      table.reload('demo', {
        data: result
      });
    }
  });
});

HTMLコード:

<div class="layui-inline">
  <input id="keyword" type="text" class="layui-input" placeholder="请输入关键字">
</div>

Layuiでの曖昧検索の方法は2種類あります。実際のニーズに合わせて適切な方法を選択して実装することができます。

bannerAds