从javascript传递date时间到C#(控制器)
你如何通过date时间(我需要它到第二)使用jQuery和mvc3的C#。 这是我的
var date = new Date(); $.ajax( { type: "POST", url: "/Group/Refresh", contentType: "application/json; charset=utf-8", data: "{ 'MyDate': " + date.toUTCString() + " }", success: function (result) { //do something }, error: function (req, status, error) { //error } });
我无法弄清楚date应该是什么格式,让C#理解它。
以下格式应该工作:
$.ajax({ type: "POST", url: "@Url.Action("refresh", "group")", contentType: "application/json; charset=utf-8", data: JSON.stringify({ myDate: '2011-04-02 17:15:45' }), success: function (result) { //do something }, error: function (req, status, error) { //error } });
尝试使用toISOString()。 它以ISO8601格式返回string。
GET方法
JavaScript的
$.get('/example/doGet?date=' + new Date().toISOString(), function (result) { console.log(result); });
C#
[HttpGet] public JsonResult DoGet(DateTime date) { return Json(date.ToString(), JsonRequestBehavior.AllowGet); }
POST方法
JavaScript的
$.post('/example/do', { date: date.toISOString() }, function (result) { console.log(result); });
C#
[HttpPost] public JsonResult Do(DateTime date) { return Json(date.ToString()); }
尝试这个
var date = new Date(); $.ajax( { type: "POST", url: "/Group/Refresh", contentType: "application/json; charset=utf-8", data: "{ 'MyDate': " + date.getTimezoneOffset() + " }", success: function (result) { //do something }, error: function (req, status, error) { //error } });
在C#
DateTime.Now.ToUniversalTime().AddMinutes(double.Parse(MyDate)).ToString();
我发现我需要包装我的date时间string像这样:
"startdate": "\/Date(" + date() + ")\/"
花了我一个小时,弄清楚如何启用WCF服务,让我回到错误消息告诉我,XD
var Ihours = Math.floor(TotMin / 60);
var Iminutes = TotMin%60; var TotalTime = Ihours +“:”+ Iminutes +':00';
$.ajax({ url: ../.., cache: false, type: "POST", data: JSON.stringify({objRoot: TotalTime}) , dataType: 'json', contentType: "application/json; charset=utf-8", success: function (response) { }, error: function (er) { console.log(er); } });
将jsondate转换为这种格式“mm / dd / yyyy HH:MM:ss”
dateFormat是一个在blog.stevenlevithan.com上find的jasondate format.js文件
var _meetStartTime = dateFormat(now, "mm/dd/yyyy HH:MM:ss");