954,595 Members — Technology Publication meets Social Media
Username:
Password:
Lost login information?
Have something to say? Contribute New Article Reply to this Article

Display client's PC Date & Time

I have a asp.net c# web form, when the page load I want to display client computer date and time.I used DateTime.Now.Date() for this. it works well in the localhost, but after I deployed in the web server it displays web server date and time.how can I display client's computer date and time? :o

aish
Light Poster
26 posts since Aug 2005
Reputation Points: 10
Solved Threads: 0
 

Use a Javascript,
Cuz this runs in the client browser.
Check out this code..

var Days = new Array('Sunday','Monday','Tuesday','Wednesday',
	'Thursday','Friday','Saturday');

var today = new Date();
var Year = takeYear(today);
var Month = leadingZero(today.getMonth()+1);
var DayName = Days[today.getDay()];
var Day = leadingZero(today.getDate());
var Hours = leadingZero(today.getHours());
var Minutes = leadingZero(today.getMinutes());
var Seconds = leadingZero(today.getSeconds());

function takeYear(theDate)
{
	x = theDate.getYear();
	var y = x % 100;
	y += (y < 38) ? 2000 : 1900;
	return y;
}

function leadingZero(nr)
{
	if (nr < 10) nr = "0" + nr;
	return nr;
}

I got it from this URL

Your code is working on the server side ,so thats the reason Y you are getting date on the server.

For you code to work on the client side,You gotta code that in Javascript that runs in the client browser.

Letscode
Junior Poster
175 posts since Feb 2005
Reputation Points: 11
Solved Threads: 6
 

Thanks!.

aish
Light Poster
26 posts since Aug 2005
Reputation Points: 10
Solved Threads: 0
 




Current Date and Time








Current Date:


Current Time:

amitkr
Newbie Poster
1 post since Sep 2005
Reputation Points: 10
Solved Threads: 0
 

In order to provide relevant content to a site visitor, I wanted to find out what time of day it was wherever the visitor was located. This would be useful to serve different content based on if its morning ("Buy Coffee!!"), lunch ("Eat lunch near you!!"), or evening ("Come rent a movie from us!!")

Using a similar approach to how viewstate is maintained during postbacks, I added a couple of methods to my base page implementation and a read-only property which returns the value of hidden input. When the base page's load method fires, it registers a hidden input and a small script that will set the input's value equal to the date of the client browser during a postback.

public class ClientTimeBasePage : Page

{

private const string CLIENTTIME_SCRIPT_ID = "__CLIENTTIMEJS";

private const string CLIENTTIME_FIELD = "__CLIENTTIME";

public string ClientTime

{

get { return this.Request.Form[CLIENTTIME_FIELD]; }

}

protected override void OnLoad(EventArgs e)

{

ClientScript.RegisterHiddenField(CLIENTTIME_FIELD, "");

if (!ClientScript.IsOnSubmitStatementRegistered(typeof(string), CLIENTTIME_SCRIPT_ID))

{

ClientScript.RegisterOnSubmitStatement(typeof(string), CLIENTTIME_SCRIPT_ID, "document.getElementById('" + CLIENTTIME_FIELD + "').value=new Date();");

}

base.OnLoad(e);

}

}

At this point, I should mention I have not tested this thoroughly but I'm pretty sure I'll run into problems when we get into different culture and locale settings across browsers. A few other considerations that come to mind is using AJAX for a similar implementation and possibly attaching the client date / time to the Request context. This seems like a more appropriate place for it - perhaps using extension methods in C# 3.0. Another option is to write some more intricate javascript to perform a little more parsing on the client-side. We should always be careful when we rely on the client's browser for input data.

senmm1981
Newbie Poster
1 post since Jul 2008
Reputation Points: 10
Solved Threads: 0
 

This article has been dead for over three months

Post: Markdown Syntax: Formatting Help
You