首页 \ 问答 \ 如何设置TemplateField日历的选定字段?(How to set Selected field of TemplateField Calendar?)

如何设置TemplateField日历的选定字段?(How to set Selected field of TemplateField Calendar?)

如何在Gridview中设置Calendar EditItemTemplate的选定日期?

<asp:TemplateField HeaderText="beginDate" SortExpression="beginDate">
                    <EditItemTemplate>
                        <asp:Calendar ID="cal1" runat="server" SelectedDate="1 june 2019"></asp:Calendar>
                    </EditItemTemplate>
                    <ItemTemplate>
                        <asp:Label ID="Label1" runat="server" Text='<%# Bind("beginDate") %>'></asp:Label>
                    </ItemTemplate>

我试过了

  • SelectedDate =“2019年6月1日”
  • SelectedDate = “2012/04/04”
  • SelectedDate =“<%#Bind(”beginDate“)%>”(这一个中断 - 不想打开编辑屏幕)<%#Bind(“beginDate”)%>返回“2019/06/05”其中是sQL数据库中的日期字段。

我不知道为什么即使我如上所示对所选日期进行硬编码,SelectedDate也不想工作。

在此处输入图像描述


How would you Set the selected date of a Calendar EditItemTemplate in a Gridview?

<asp:TemplateField HeaderText="beginDate" SortExpression="beginDate">
                    <EditItemTemplate>
                        <asp:Calendar ID="cal1" runat="server" SelectedDate="1 june 2019"></asp:Calendar>
                    </EditItemTemplate>
                    <ItemTemplate>
                        <asp:Label ID="Label1" runat="server" Text='<%# Bind("beginDate") %>'></asp:Label>
                    </ItemTemplate>

I Tried

  • SelectedDate="1 june 2019"
  • SelectedDate="2012/04/04"
  • SelectedDate="<%# Bind("beginDate") %>" (This one breaks - Doesn't want to open the edit screen) <%# Bind("beginDate") %> Returns "2019/06/05" Which is a date field in a sQL database.

I don't know why SelectedDate doesn't want to work even if I hardcode the selected date as shown above.

enter image description here


原文:https://stackoverflow.com/questions/16231948
更新时间:2023-06-18 06:06

最满意答案

您可以检查小时数是否大于24小时,如果是,请添加一天,然后删除24小时。

$actual='23:15';
$expected='25:45';

$day = 1;
list($hrs, $min) = explode(':', $expected);
if ($hrs > 24) { $day += 1; $hrs -= 24; }

$start_time = new DateTime("1970-01-01 $actual:00");
$time = $start_time->diff(new DateTime("1970-01-$day $hrs:$min:00"));

echo $time->format('%hh %Im');

输出:

2h 30m

另请注意, ==用于比较,而不是分配。

如果有48小时或更长时间,你也可以用while()更改if ($hrs > 24)


编辑

正如@CollinD指出的那样,如果时间超过了一个月的天数,它就会失败。 这是另一个解决方案:

$actual='23:15';
$expected='25:45';

list($hrs, $min) = explode(':', $actual);
$total1 = $min + $hrs * 60;

list($hrs, $min) = explode(':', $expected);
$diff = $min + $hrs * 60 - $total1;

$start_time = new DateTime();
$expected_time = new DateTime();
$expected_time->modify("+ $diff minutes");
$time = $start_time->diff($expected_time);

echo $time->format('%hh %Im');

You could check if the number of hours are greater than 24, and if so, add a day, and remove 24 hours.

$actual='23:15';
$expected='25:45';

$day = 1;
list($hrs, $min) = explode(':', $expected);
if ($hrs > 24) { $day += 1; $hrs -= 24; }

$start_time = new DateTime("1970-01-01 $actual:00");
$time = $start_time->diff(new DateTime("1970-01-$day $hrs:$min:00"));

echo $time->format('%hh %Im');

Output:

2h 30m

Please also note that == is used to compare, not to assign.

You can also change the if ($hrs > 24) by while(), if there is 48 hours or more.


edit

As pointed out by @CollinD, if the time exceed the number of days of the month, it will fail. Here is another solution:

$actual='23:15';
$expected='25:45';

list($hrs, $min) = explode(':', $actual);
$total1 = $min + $hrs * 60;

list($hrs, $min) = explode(':', $expected);
$diff = $min + $hrs * 60 - $total1;

$start_time = new DateTime();
$expected_time = new DateTime();
$expected_time->modify("+ $diff minutes");
$time = $start_time->diff($expected_time);

echo $time->format('%hh %Im');

相关问答

更多

相关文章

更多

最新问答

更多
  • 散列包括方法和/或嵌套属性(Hash include methods and/or nested attributes)
  • TensorFlow:基于索引列表创建新张量(TensorFlow: Create a new tensor based on list of indices)
  • 企业安全培训的各项内容
  • 错误:RPC失败;(error: RPC failed; curl transfer closed with outstanding read data remaining)
  • NumPy:将int64值存储在np.array中并使用dtype float64并将其转换回整数是否安全?(NumPy: Is it safe to store an int64 value in an np.array with dtype float64 and later convert it back to integer?)
  • 注销后如何隐藏导航portlet?(How to hide navigation portlet after logout?)
  • 将多个行和可变行移动到列(moving multiple and variable rows to columns)
  • 对setOnInfoWindowClickListener的意图(Intent on setOnInfoWindowClickListener)
  • Angular $资源不会改变方法(Angular $resource doesn't change method)
  • 如何配置Composite C1以将.m和桌面作为同一站点提供服务(How to configure Composite C1 to serve .m and desktop as the same site)
  • 不适用:悬停在悬停时:在元素之前[复制](Don't apply :hover when hovering on :before element [duplicate])
  • Mysql DB单个字段匹配多个其他字段(Mysql DB single field matching to multiple other fields)
  • 产品页面上的Magento Up出售对齐问题(Magento Up sell alignment issue on the products page)
  • 是否可以嵌套hazelcast IMaps?(Is it possible to nest hazelcast IMaps? And whick side effects can I expect? Is it a good Idea anyway?)
  • UIViewAnimationOptionRepeat在两个动画之间暂停(UIViewAnimationOptionRepeat pausing in between two animations)
  • 在x-kendo-template中使用Razor查询(Using Razor query within x-kendo-template)
  • 在BeautifulSoup中替换文本而不转义(Replace text without escaping in BeautifulSoup)
  • 如何在存根或模拟不存在的方法时配置Rspec以引发错误?(How can I configure Rspec to raise error when stubbing or mocking non-existing methods?)
  • asp用javascript(asp with javascript)
  • “%()s”在sql查询中的含义是什么?(What does “%()s” means in sql query?)
  • 如何为其编辑的内容提供自定义UITableViewCell上下文?(How to give a custom UITableViewCell context of what it is editing?)
  • c ++十进制到二进制,然后使用操作,然后回到十进制(c++ Decimal to binary, then use operation, then back to decimal)
  • 以编程方式创建视频?(Create videos programmatically?)
  • 无法在BeautifulSoup中正确解析数据(Unable to parse data correctly in BeautifulSoup)
  • webform和mvc的区别 知乎
  • 如何使用wadl2java生成REST服务模板,其中POST / PUT方法具有参数?(How do you generate REST service template with wadl2java where POST/PUT methods have parameters?)
  • 我无法理解我的travis构建有什么问题(I am having trouble understanding what is wrong with my travis build)
  • iOS9 Scope Bar出现在Search Bar后面或旁边(iOS9 Scope Bar appears either behind or beside Search Bar)
  • 为什么开机慢上面还显示;Inetrnet,Explorer
  • 有关调用远程WCF服务的超时问题(Timeout Question about Invoking a Remote WCF Service)