首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >中继器中的差值

中继器中的差值
EN

Stack Overflow用户
提问于 2012-01-18 16:23:11
回答 1查看 98关注 0票数 0

如何在中继器中减去2日期时间?我想减去2个requestDates,然后写到waitingTime。

代码语言:javascript
运行
复制
       <td>
        <%#Eval("requestDates")%>
        </td>
        <td>
        <%#Eval("waitingTime")%>
        </td>

         I wanna get like 1 week 4 days 18 hours 47 minutes:>

        ID         Request_Dates                     Waiting_Time
        1      18.01.2012 09:54:38          6 days 20 hours 37 mins 13 sec
        2      11.01.2012 13:17:25                 19 hours 18 mins 47 sec
       ...            ....                                 ....

如您所见,等待时间=(Id1 request_dates) -(Id2 request_dates)谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-01-18 16:27:52

ONE SOLUTION

您可以创建一个方法并在html代码中调用它,方法如下:

代码语言:javascript
运行
复制
 <td>
        <%# substraction(Eval("requestDates"),Eval("waitingTime"))%>
        </td>

在cs中:

代码语言:javascript
运行
复制
public function substraction(....){}

只需考虑到您必须在html和cs中强制转换变量。

对于另一个解决方案,我会用文字替换Eval,添加一个ItemDataBound事件,在方法中我会找到控件并赋值,在这里我可以从"e.Item“对象中获得值并轻松减去它。例如:

代码语言:javascript
运行
复制
<asp:Repeater ID="rp" runat="server" OnItemDataBound="Item_Bound">
.....
</asp:Repeater>

 void Item_Bound(Object sender, DataListItemEventArgs e)
      {

         MyObject theobject=(MyObject) e.Item.DataItem;
         if (e.Item.ItemType == ListItemType.Item || 
             e.Item.ItemType == ListItemType.AlternatingItem)
         {

            // Retrieve the Label control in the current DataListItem.
            Label ltRequest = (Label)e.Item.FindControl("ltRequest");
          ltRequest.text=theobject.requestDates;
        ....
        /**HERE I CAN DO WHATEVER***/
     }
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8907102

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档