【问题标题】:How to get values from daterange picker using asp C#如何使用asp C#从日期范围选择器中获取值
【发布时间】:2018-12-17 08:09:10
【问题描述】:

我试图从日期范围选择器、范围、startDate 和 endDate 中获取值。 我的内容模板中有我的部分代码 .ascx

 <asp:TextBox ID="reportrange" runat="server" CssClass="DatepickerInput" />


<script type="text/javascript">
$(function () {

    var start = moment().subtract(29, 'days');
    var end = moment();

    function cb(start, end) {
        $('#reportrange span').html(start.format('MMMM D, YYYY') + ' - ' + end.format('MMMM D, YYYY'));
    }

    $('.DatepickerInput').daterangepicker({
        startDate: start,
        endDate: end,
        ranges: {
            'Today': [moment(), moment()],
            'Yesterday': [moment().subtract(1, 'days'), moment().subtract(1, 'days')],
            'This Month': [moment().startOf('month'), moment().endOf('month')],
            'Last Month': [moment().subtract(1, 'month').startOf('month'), moment().subtract(1, 'month').endOf('month')]
        }
    }, cb);

    cb(start, end);

});

在我的 File.cs 我有这个

  string value = reportrange.values;

【问题讨论】:

  • 有控制台reportrange的值吗?
  • 这些值纯粹保存在 JavaScript 对象中,当您将表单发布到服务器时,它们不会随表单一起提交。发送到服务器的唯一值是文本框本身的实际值,即用户选择的日期。因此无法从 C# 访问它们。您必须做一些额外的事情才能将它们发送到那里,例如将值复制到隐藏字段中,或通过 AJAX 或其他方式发送它们。再说一次,您正在硬编码范围等的计算,它们是可预测的(不是基于用户数据),因此您可以使用 C# 重复相同的计算。

标签: javascript c# jquery asp.net datepicker


【解决方案1】:

我解决了我的问题如下 将日期选择器范围转换为文本框并获取文本

&lt;asp:TextBox id="reportrange" runat="server" CssClass="DatepickerInput" Text=" " style="width:100%"&gt;&lt;/asp:TextBox&gt;

以及背后的代码 获取文本并拆分开始日期,结束日期

string date= reportrange.Text;
string d_start= (date.Split('-'))[0];
string d_end = (date.Split('-'))[1];
string start= d_start + " 00:00:00.000";
string end= d_end + " 23:59:59.999";

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-07-04
    • 2015-10-18
    • 1970-01-01
    • 2016-04-04
    • 2020-04-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多