layui滑块范围值如何传给后端?

项目前端有一个需求是用滑块选择范围值,点查看后出相关数据表,目前控制台能打印出滑块的开始和结尾值,但就是无法把范围值传给后端,前端不太熟悉,请高人指点一下。

<script type="text/html" id="toolbarDemo">
  <div class="layui-btn-container">
   
     <a href="javascript:void(0);" id="ck"
    class="layui-btn layui-btn-sm layui-btn-radius layui-btn-normal">查看</a>
   
  </div>
</script>

下面是滑块取值代码:

  //开启范围选择
             layui.slider.render({
                elem: '#slideTest1'
            // ,value: 400 //初始值       
                ,min:300
                ,max:700
                ,value: [400, 600] //初始值
                ,range: true //范围选择
                ,setTips: function(value){ //自定义提示文本
                return value + '分';
                }
                ,change: function(vals){
                    console.log(vals[0]) //得到开始值
                    console.log(vals[1]) //得到结尾值                
                    //$('#test-slider-tips2').html('开始值:'+ vals[0] + '、结尾值:'+ vals[1]);
                }
            });

TechWhizKid参考GPT回答:

  • 要把滑块的范围值传给后端,先要定义一个变量,用来保存这个范围值,然后在你的查看按钮的点击事件中,用 AJAX 技术(或者其他方式,比如 Fetch API)来将这个值发送到服务器。

以下是一个例子:

// 在外面定义变量,用于保存滑块的范围值
let sliderValues = [400, 600];

// 开启范围选择
layui.slider.render({
    elem: '#slideTest1',
    min:300,
    max:700,
    value: sliderValues, // 初始值
    range: true, // 范围选择
    setTips: function(value) { // 自定义提示文本
        return value + '分';
    },
    change: function(vals) {
        console.log(vals[0]); // 得到开始值
        console.log(vals[1]); // 得到结尾值

        // 更新变量的值
        sliderValues = vals;
    }
});

// 定义查看按钮的点击事件
$('#ck').on('click', function() {
    // 使用 AJAX 技术将滑块的范围值发送到服务器
    $.ajax({
        type: "POST",
        url: "/path/to/your/api", // 这里替换为你的 API 地址
        data: { start: sliderValues[0], end: sliderValues[1] },
        success: function(response) {
            // 这里可以处理服务器返回的响应
            console.log(response);
        },
        error: function(jqXHR, textStatus, errorThrown) {
            // 这里可以处理 AJAX 请求失败的情况
            console.error(textStatus, errorThrown);
        }
    });
});
  • 注意替换上面代码中的/path/to/your/api为你的实际API地址,同时也要根据后端API接口的要求,修改 AJAX 请求的类型(可能不是 "POST"),以及请求的数据格式。

  • 另外,这个例子使用了 jQuery 中的 AJAX 函数和点击事件处理函数,如果你的项目没有使用 jQuery,可能要用其他方式来发送 AJAX 请求和处理点击事件。

基于new bing部分指引作答:
要将滑块的范围值传递给后端,你可以使用Ajax或者表单提交的方式将数据发送到后端。

使用Ajax的示例代码如下:

layui.use(['slider', 'jquery'], function(){
  var slider = layui.slider;
  var $ = layui.jquery;
  
  // 开启范围选择
  slider.render({
    elem: '#slideTest1',
    min: 300,
    max: 700,
    value: [400, 600],
    range: true,
    setTips: function(value){
      return value + '分';
    },
    change: function(vals){
      console.log(vals[0]); // 获取开始值
      console.log(vals[1]); // 获取结尾值
    }
  });
  
  // 点击查看按钮时触发的事件
  $('#ck').on('click', function(){
    var startValue = slider.getValue('#slideTest1')[0]; // 获取开始值
    var endValue = slider.getValue('#slideTest1')[1]; // 获取结尾值
    
    // 发送数据到后端
    $.ajax({
      url: 'your-backend-url',
      type: 'POST',
      data: {
        startValue: startValue,
        endValue: endValue
      },
      success: function(response){
        // 处理成功响应
      },
      error: function(xhr, status, error){
        // 处理错误
      }
    });
  });
});

在上述代码中,我们使用jQuery库发送Ajax请求将滑块的范围值作为数据传递给后端。你需要将your-backend-url替换为实际的后端URL。在成功响应的回调函数中,你可以对返回的数据进行处理。

另外,确保你已经在页面中引入了jQuery库,这样才能使用$.ajax方法。

如果你的前端使用的是表单提交方式,你可以将滑块的范围值设置为表单的输入字段,并在表单提交时将数据传递给后端。具体实现方式会根据你所使用的前端框架或库而有所不同。

  • 这个问题的回答你可以参考下: https://ask.csdn.net/questions/7597855
  • 我还给你找了一篇非常好的博客,你可以看看是否有帮助,链接:怎么样实现跳转页面后,点击返回,仍然保留表格原来的筛选条件?
  • 除此之外, 这篇博客: layui如何使表头内容居中显示中的 这个时候你不仅可以用上面那种方式,你还可以通过以下的方式: 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • layui.use('table', function () {
            var table = layui.table;
     
            table.render({
                elem: '#desTable'
                , url: '${ctx}/alarm/queryEventShowScatter'
                , even: true
                , page: { //支持传入 laypage 组件的所有参数(某些参数除外,如:jump/elem) - 详见文档
                    layout: ['limit', 'count', 'prev', 'page', 'next', 'skip'] //自定义分页布局
                    //,curr: 5 //设定初始在第 5 页
                    , groups: 1 //只显示 1 个连续页码
                    , first: false //不显示首页
                    , last: false //不显示尾页
     
                }
                , cols: [[
                    {field: 'id', align:'right',width: '15%', title: '1', style: 'background-color: #5FB878; color: #fff'}
                    , {field: 'srcip', width: '15%', title: '2', style: 'background-color: #5FB878; color: #fff'}
                    , {field: 'logtime', width: '20%', title: '3', style: 'background-color: #5FB878; color: #fff'}
                    , {field: 'lasttime', width: '20%', title: '4', style: 'background-color: #5FB878; color: #fff'}
                    , {field: 'count', width: '15%', title: '5', style: 'background-color: #5FB878; color: #fff'}
                    , {field: 'percent', width: '15%', title: '6', style: 'background-color: #5FB878; color: #fff'}
                ]],
                done: function (res, curr, count) {
                    $('tr').css({'background-color': '#009688', 'color': '#fff'});
                }
     
            });
        });
    
  • 您还可以看一下 刘建萍老师的人工智能系列课程零基础讲解知识点和实例应用线性回归梯度下降逻辑回归课程中的 讲解机器学中会涉及到的有关数学方面的知识储备有哪些小节, 巩固相关知识点