我们正在使用毫秒级的持续时间转换,保存在数据库中(格式:mm:ss)。我们可以通过命令#bignews.Control_CountdownDuration#访问持续时间值。
<div class="slideBox" data-duration="#bignews.Control_CountdownDuration#">
当前值(mm:ss)不足以正常工作数据持续时间。 任何人都可以指导我完成任务吗?
答案 0 :(得分:2)
createTimeSpan()
和dateDiff()
的结合将完成这项工作
此处输入的内容包括变量minutes
和seconds
:
<cfset cmpBase = createTimeSpan(0, 0, 0, 0)>
<cfset cmpValue = createTimeSpan(0, 0, minutes, seconds)>
<cfset diffInSeconds = dateDiff("s", cmpBase, cmpValue)>
<cfset diffInMilliseconds = (diffInSeconds * 1000)>
假设您的源值存储为mm:ss
之类的字符串,则为:
<cfset minutes = getToken(bignews.Control_CountdownDuration, 1, ":")>
<cfset seconds = getToken(bignews.Control_CountdownDuration, 2, ":")>
<cfset cmpValue = createTimeSpan(0, 0, minutes, seconds)>
<cfset cmpBase = createTimeSpan(0, 0, 0, 0)>
<cfset diffInSeconds = dateDiff("s", cmpBase, cmpValue)>
<cfset diffInMilliseconds = (diffInSeconds * 1000)>
<div class="slideBox" data-duration="#diffInMilliseconds#">
(为了便于阅读,省略了验证。)
旁注:您可能应该使用总秒数(请参阅变量diffInSeconds
),因为您还没有毫秒精度。