星空2020 2023-02-08 20:03 采纳率: 64.1%
浏览 27
已结题

layui table查询完成后,如何保留input的值并选中它?

我的layui table有如下的toolbar,如何在实现搜索后,保留搜索框的值,并且是鼠标选中的状态?
目前我点击搜索后,无论是日期选择框,还是后面的input框,都被置空了。当然,查询功能无异常。


```javascript
<!--table head toolbar-->
  <script type="text/html" id="toolbarDemo">

<div class="layui-inline">
      <div class="layui-input-inline">
        <input type="text" class="layui-input" name="startdate" id="startdate" placeholder="开始时间">
      </div>
      ~
      <div class="layui-input-inline">
        <input type="text" class="layui-input" name="enddate" id="enddate" placeholder="结束时间">
      </div>
      
      <div class="layui-input-inline">
        <input type="text" class="layui-input" name="keyword" id="searchReload" placeholder="请输入姓名!" style="width:300px;">
      </div>
      <button type="button" class="layui-btn layui-btn-normal" id="searchBtn" lay-filter="search" lay-event="search">查询</button>

<button type="button" class="layui-btn layui-btn-warm layui-icon" lay-event="add1"><i class="layui-icon"></i>新建</button>
</script>



![img](https://img-mid.csdnimg.cn/release/static/image/mid/ask/360431958576144.png "#left")
  • 写回答

2条回答 默认 最新

  • 踢足球的阿坤 2023-02-08 20:42
    关注
    toolbar: '#toolbarDemo'
    <script type="text/html" id="toolbarDemo">
      <div class="layui-form">
        <div class="layui-inline">
            <input class="layui-input" name="date" id="demoReload" autocomplete="off">
        </div>
        <div class="layui-inline">
            <input type="text" name="goods_name" placeholder="商品名称" autocomplete="off" class="layui-input">
        </div>
        <button class="layui-btn" data-type="reload" lay-filter="serach">搜索</button>
    </script>
    

    你可以尝试使用下面的方法:

    在搜索按钮添加点击事件,用于阻止默认行为;
    获取要搜索的内容,添加参数到表格上,比如: table.reload('list', { where: { date: $('input[name=date]').val(), goods_name: $('input[name=goods_name]').val() } });
    重新加载表格,搜索完成。
    在搜索完成后,使用jQuery重新填充input的值,使用 .val() 方法,让搜索框保持选中状态。
    完整的实现代码如下

    $('#demoReload').on('click',function (e){
        // 阻止默认行为
        e.preventDefault();
        
        // 重新加载表格
        table.reload('list', {
            where: {
                date: $('input[name=date]').val(),
                goods_name: $('input[name=goods_name]').val()
            }
        });
        
        // 填充值
        $('input[name=date]').val($('input[name=date]').val());
        $('input[name=goods_name]').val($('input[name=goods_name]').val());
    });
    
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 2月23日
  • 已采纳回答 2月15日
  • 修改了问题 2月8日
  • 创建了问题 2月8日

悬赏问题

  • ¥15 关于#MATLAB#的问题,如何解决?(相关搜索:信噪比,系统容量)
  • ¥500 52810做蓝牙接受端
  • ¥15 基于PLC的三轴机械手程序
  • ¥15 多址通信方式的抗噪声性能和系统容量对比
  • ¥15 winform的chart曲线生成时有凸起
  • ¥15 msix packaging tool打包问题
  • ¥15 finalshell节点的搭建代码和那个端口代码教程
  • ¥15 Centos / PETSc / PETGEM
  • ¥15 centos7.9 IPv6端口telnet和端口监控问题
  • ¥20 完全没有学习过GAN,看了CSDN的一篇文章,里面有代码但是完全不知道如何操作