为什么我不能传递服务器的日期时间到我的本地jquery脚本
Why I cannot pass the datetime of the server to my local jquery script?
我有一个非常简单的timeoftheserver.php页面:
<?php
echo date('D, d M y H:i:s');
?>
和我的本地脚本也很简单:
var today;
try {
today = new Date($.ajax({'type': 'HEAD', 'url': 'timeoftheserver.php'}).getResponseHeader('Date'));
}
catch(err) {
today = new Date();
alert("here");
}
alert(today);
但不是服务器时间(甚至是本地时间和警报here
),我得到了弹出窗口:
Thu Jan 01 1970 01:00:00 GMT+0100 (Central Europe Standard Time)
这段代码有什么问题?
您正在使用head
请求,它不包括响应体。将"head"改为"GET"
否则,你可以在报头中包含时间,并从那里获取它,而不是在正文中发送它。
方法1)使用头文件:
在PHP中发送时间作为标头,将PHP更改为:
header("x-app-date: ".date('D, d M y H:i:s'));
然后像这样在AJAX中获取日期…
$.ajax({
'type': 'HEAD',
'url':'timeoftheserver.php',
'complete': function(r){
today = new Date(this.getResponseHeader('x-app-date'));
}
});
方法2:使用Body
让PHP保持原样。将Ajax更改为:
$.ajax({
'type': 'GET',
'url': 'timeoftheserver.php',
'complete': function(resp){
today = new Date(resp);
}
});
相关文章:
- 我如何让我的脚本连续提交两个表单
- 我的脚本不起作用
- 为什么我的脚本正在运行动画,但没有显示它
- 茉莉花Maven插件包括我的脚本使用文件协议
- 为什么我的脚本应该只在 IE 上触发时在 Mozilla 上触发
- 选择下拉列表需要在选中时显示提供商的详细信息-无法通过我的脚本显示url
- W3Schools的函数正在破坏我的脚本
- 让循环在我的脚本中工作
- 不存在的XML节点破坏了我的脚本
- jQuery Masonry在我的脚本中不起作用
- 这个对象构造函数阻止我的脚本运行
- 如果在外部单击,则隐藏弹出窗口.为什么我的脚本没有'不起作用
- 为什么我的脚本不使用keyup生成新行
- 为什么't我的脚本(正确链接的)不起作用
- jQuery没有在Wordpress中定义,但我的脚本被正确排队
- 如何将我的脚本应用于通过无限滚动加载的图像
- 不明白为什么我不用我的脚本更改我的 PHP 变量
- 使用 ajax 作为注释表单,它给了我 500 个内部错误,但没有脚本它可以工作,这意味着我的脚本是错误的;对
- 我的脚本中有什么错误
- 隐藏的“纬度”和“lng”字段没有被删除,所以我的脚本仍在从不正确的地理位置中搜索纬度和液化天然气结果