jQuery UI 滑块值更改时如何运行代码隐藏函数

Posted

技术标签:

【中文标题】jQuery UI 滑块值更改时如何运行代码隐藏函数【英文标题】:How to run a Code Behind function when jQuery UI slider value changes 【发布时间】:2020-01-19 13:25:46 【问题描述】:

这是我的代码:

    function display() 
        $(document).ready(function () 

            var txtStart = $("#TextBox1");
            var txtStartDate = $(txtStart).val(); //Value from arrival

            var txtEnd = $("#TextBox2");
            var txtEndDate = $(txtEnd).val();
            var minDate = new Date(txtStartDate);
            var maxDate = new Date(txtEndDate);

            $("#slider").slider(
                min: minDate.getTime(),
                max: maxDate.getTime(),
                step: 60 * 60 * 24 * 1000, // 1 day
                slide: function (e, ui) 
                    var currentDate = new Date(ui.value);
                    $('#now').text(currentDate.toDateString());
                ,

                change: function (e, ui) 

              /*I want to run the code behind function here*/    

                
            );
        );
    

【问题讨论】:

欢迎来到 SO。目前尚不清楚“功能背后”是什么意思?您想在更改之前运行 smth? code behind 表示asp.net中aspx.cs中的一个函数 不,我不想改变之前的东西。我想在滑块的当前值更改时运行 aspx.cs 函数 如果我正在阅读正确的 aspx.cs,它是服务器端代码。因此,您将无法直接从客户端调用方法。您必须执行 ajax 调用。 可能重复:***.com/questions/28827196/… 【参考方案1】:

要执行“代码隐藏”或您的服务器端脚本,您必须通过 AJAX 回发。在您的更改回调中,您需要执行以下操作:

change: function(e, ui)
  $.ajax(
    type: "POST",
    url: "~/code_behind.aspx/Method",
    data:  date: $('#now').val() ,
    contentType: "application/json; charset=utf-8"
  );

由于您的帖子不清楚,我无法进一步澄清。您需要根据您的脚本和需求对其进行调整。

【讨论】:

如果我的代码后面的页面名称为“sick.aspx.cs”,方法名称为“desease”,url应该怎么写? sick.aspx/desease 我怀疑。抱歉,我不会做很多 .NET 的事情。

以上是关于jQuery UI 滑块值更改时如何运行代码隐藏函数的主要内容,如果未能解决你的问题,请参考以下文章

使用带有 Fontawesome 的 jQuery UI 滑块更改星级

单击滑块轨道时获取 Jquery-UI 滑块值?

JQuery UI 范围滑块值

如何将 jQuery UI 控件转换为表单元素契约?

如何在标签中放置滑块值?

如何使用滑块值更改放大缩小 UIimageView