2015-05-22 6 views
0

Когда пользователь нажимает на CTRL + S, тогда он должен отображать текущее время. Впервые он будет показывать текущее время, но в следующий раз он будет показывать, как предыдущий вот код:Время в системе показывает то же значение каждый раз

var newtime; 
$.save('S', function() { 
    newtime = '@System.DateTime.Now.ToString("t")'; 
    autoSave("Last saved at " + '@DateTime.Now.ToString("t")'); 
}); 

Пробовал как вещь до сих пор получить тот же output..I попал в newtime=10:37 everytime..something является там нет?

+2

Является ли это C# язык ???? –

+0

похоже на javascript ... –

ответ

3

Вы извлекаете значение DateTime с сервера с помощью синтаксиса Razor в этом javascript-коде. Это всегда будет одинаково при каждом выполнении этого кода.

Вы должны потребительных

var newtime; 
$.save('S', function() { 
    var currentdate = new Date(); 
    newtime = currentdate.getHours() + ":" + currentdate.getMinutes() + ":" + currentdate.getSeconds(); 
    autoSave("Last saved at " + newtime); 
}); 
+0

thnx его рабочий .. – Dhara

+0

Я рад, что это помогло, любезно отметим, что принимаем ответ, так что другие, столкнувшиеся с той же проблемой, могут без сомнения использовать этот ответ :) –

0

Вам необходимо использовать функцию javascript datetime вместо C#, поскольку DateTime.Now.ToString ("t") выполняется только на стороне сервера, а не на стороне клиента. Попробуйте это вместо:

$.save('S', function() { 
    var d = new Date(); 
    newTime = d.getHours()+":"+d.getMinutes(); 
    autoSave("Last saved at " + newTime); 
}); 
+0

thnx его рабочий :) – Dhara

Смежные вопросы