实际上,我正在开发一个诊所管理系统,在一个屏幕上,我需要显示添加到队列中的今天的病人。
为此:我打电话给DateTime.Now;
实际上我的主机服务器位于加拿大位置,我在马来西亚。所以两者之间有12小时的差距,记录直到下午12点才显示。
在使用Google搜索解决方案时,我通过JavaScript找到了解决方案。
<label id="lblTime" runat="server" style="font-weight: bold"></label>
<script type="text/javascript">
$(document).ready(function () {
ShowTime();
});
function ShowTime() {
var dt = new Date();
document.getElementById("lblTime").innerHTML = dt.toLocaleTimeString();
window.setTimeout("ShowTime()", 1000); // Here 1000(milliseconds) means one 1 Sec
}
</script>
实际上,它显示时间,但是当我在后面的代码上得到文本时,它给了我一个空字符串。
string strrr = lblTime.InnerHtml.ToString();
任何人都可以指导我完成这个吗? 我在做任何错误吗? 还有其他办法吗?
实际上,我需要!isPostback
Page_load
中的日期和时间
答案 0 :(得分:0)
ShowTime()
将在Page_Load之后执行。你当前的设计不会起作用。
您可以使用jQuery ajax调用方法后面的方法并将客户日期/时间传递给它。
看看这篇文章:http://coderskey.blogspot.com/2013/04/how-to-call-code-behind-function-using.html
这是代码片段。你会想要“SetCurrentTime”。
function ShowCurrentTime() {
$.ajax({
type: "POST",
url: "CS.aspx/GetCurrentTime",
data: '{name: "' + $("#<%=txtUserName.ClientID%>")[0].value + '" }',
contentType: "application/json; charset=utf-8",
dataType: "json",
success: OnSuccess,
failure: function(response) {
alert(response.d);
}
});
}
function OnSuccess(response) {
alert(response.d);
}
答案 1 :(得分:0)
您可能希望将日期和时间字符串传递回UTC或具有本地时区偏移的本地时间的服务器。对于前者,使用toISOString方法,该方法以ISO 8601格式返回UTC日期和时间:
var now = new Date();
var UTCString = now.toISOString(); // 2014-03-21T03:28:52.531Z
对于后者,你必须自己构建字符串:
function toLocalISOString(d) {
function pad(n){
var sign = n < 0? '-' : '';
n = Math.abs(n);
return sign + (n<10? '0' : '') + n;
}
function minsToHHMM(n){
var hh = pad(n/60 |0);
var mm = pad(Math.abs(n%60));
return hh + '' + mm;
}
var offset = minsToHHMM(d.getTimezoneOffset() * -1);
return d.getFullYear() + '-' + pad(d.getMonth() + 1) + '-' + pad(d.getDate()) +
'T' + pad(d.getHours()) + ':' + pad(d.getMinutes()) + ':' + pad(d.getSeconds()) +
(offset<0?'-' : '+') + offset;
}
toLocalISOString(now); // 2014-03-21T14:28:52+1100
请注意,javascript中的时区偏移量仅为几分钟,与通常的偏移量符号相反,例如: UTC1000是-600,UTC-0530是330.上面忽略了毫秒,如果需要,可以包括它们作为十进制秒。
其他格式也可以适应。
答案 2 :(得分:0)
我想我找到了答案
我按照链接:Here
但无法在Page_load中获取日期和时间
像Ajax Calls这样的东西需要完成PostBack
我计划在!ispostback 事件之后立即采取计时器然后回发页面,然后我将使计时器< strong>启用错误。
谁能提出比这更好的解决方案?