如何使用 ajax c# 从控制器获取数据
How to Get Data from controller with ajax c#
如何使用 ajax 从控制器获取数据。
我的控制器中的方法
public ActionResult StartPage()
{
var result = CommonService.GetCurrentDateTime();
ViewBag.DateAndTimeFromDataBase = result ;
return View();
}
和我的Ajax
$(document).ready(function() {
setInterval('getServerDateTime()', 0, 1000);
});
function getServerDateTime() {
$.ajax({
type: 'GET',
cache: false,
url: "/Login/StartPage",
complete: function (req, textStatus) {
var dateString = req.getResponseHeader('Date');
if (dateString.indexOf('GMT') === -1) {
dateString += ' GMT';
}
var date = new Date(dateString);
$('#time-span').text(dateString);
}
});
};
这里我从服务器获取日期时间。我想从控制器中获取时间日期的值。并显示它们之间的差异。
我是新来的。我无法在控制器中获得结果。
<div>
<span id="time-span" class="date-time"></span>
</div>
考虑到这是一个 AJAX 请求,您最好 return 将数据作为 JSON 负载。您可以像这样修改代码来做到这一点:
public JsonResult StartPage()
{
var date = CommonService.GetCurrentDateTime();
return Json(new { date });
}
这将 return 一个看起来像这样的客户端有效负载:
{
"date": "<the value of GetCurrentDateTime() as a String>"
}
然后可以通过您的 JavaScript 代码轻松访问,如下所示:
$.ajax({
type: 'GET',
cache: false,
url: "/Login/StartPage",
complete: function (response) {
var dateString = response.date;
if ( !dateString ) {
console.error('A001: date not returned from server');
}
if (dateString.indexOf('GMT') === -1) {
dateString += ' GMT';
}
var date = new Date(dateString);
$('#time-span').text(dateString);
}
});
你应该注意到 .NET 有一种时髦的序列化时间戳的方法可能不适用于 JS,你可能希望将服务器端的日期格式设置为 JavaScript 更容易理解的格式(然后参见 [= 的选项13=])
如何使用 ajax 从控制器获取数据。
我的控制器中的方法
public ActionResult StartPage()
{
var result = CommonService.GetCurrentDateTime();
ViewBag.DateAndTimeFromDataBase = result ;
return View();
}
和我的Ajax
$(document).ready(function() {
setInterval('getServerDateTime()', 0, 1000);
});
function getServerDateTime() {
$.ajax({
type: 'GET',
cache: false,
url: "/Login/StartPage",
complete: function (req, textStatus) {
var dateString = req.getResponseHeader('Date');
if (dateString.indexOf('GMT') === -1) {
dateString += ' GMT';
}
var date = new Date(dateString);
$('#time-span').text(dateString);
}
});
};
这里我从服务器获取日期时间。我想从控制器中获取时间日期的值。并显示它们之间的差异。 我是新来的。我无法在控制器中获得结果。
<div>
<span id="time-span" class="date-time"></span>
</div>
考虑到这是一个 AJAX 请求,您最好 return 将数据作为 JSON 负载。您可以像这样修改代码来做到这一点:
public JsonResult StartPage()
{
var date = CommonService.GetCurrentDateTime();
return Json(new { date });
}
这将 return 一个看起来像这样的客户端有效负载:
{
"date": "<the value of GetCurrentDateTime() as a String>"
}
然后可以通过您的 JavaScript 代码轻松访问,如下所示:
$.ajax({
type: 'GET',
cache: false,
url: "/Login/StartPage",
complete: function (response) {
var dateString = response.date;
if ( !dateString ) {
console.error('A001: date not returned from server');
}
if (dateString.indexOf('GMT') === -1) {
dateString += ' GMT';
}
var date = new Date(dateString);
$('#time-span').text(dateString);
}
});
你应该注意到 .NET 有一种时髦的序列化时间戳的方法可能不适用于 JS,你可能希望将服务器端的日期格式设置为 JavaScript 更容易理解的格式(然后参见 [= 的选项13=])