【问题标题】:How to run a Code Behind function when jQuery UI slider value changesjQuery UI 滑块值更改时如何运行代码隐藏函数
【发布时间】: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 调用。

标签: jquery asp.net jquery-ui


【解决方案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 的事情。
猜你喜欢
  • 2011-09-02
  • 2011-05-24
  • 1970-01-01
  • 2020-09-21
  • 2011-05-06
  • 1970-01-01
  • 2010-11-15
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多