我需要调用来自ajax请求的代码,此调用是针对当前时间的。我不知道怎么做我设置了一个带有工作时钟的html文件。我打电话给的页面没有显示它从$ container1加载文本但没有时钟和日期的时钟?有人知道为什么吗?如果容器1中的文本加载正常,为什么当前时间和日期时钟不起作用?
到目前为止,我在html中看到了数据被抓取的内容。
var mydate=new Date()
var year=mydate.getYear()
if (year < 1000)
year+=1900
var day=mydate.getDay()
var month=mydate.getMonth()
var daym=mydate.getDate()
if (daym<10)
daym="0"+daym
var dayarray=new Array("Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday")
var montharray=new Array("1","2","3","4","5","6","7","8","9","10","11","12")
var date=new Date();
var hours=date.getHours();
var minutes=date.getMinutes();
var ampm = hours >= 12 ? 'PM' : 'AM';
hours = hours % 12;
hours = hours ? hours : 12;
minutes = minutes < 10 ? '0'+minutes : minutes;
var s=date.getSeconds();
s = s < 10 ? '0'+s : s;
var Time = "Current Time: ";
var Text = "Last Updated: ";
document.getElementById('time').innerHTML =Time+" "+dayarray[day]+" "+montharray[month]+"/"+daym+"/"+year+" "+hours+":"+minutes+":"+s+" "+ampm;
document.getElementById('time2').innerHTML =Text+" "+dayarray[day];
}
}
</script>
</head>
<body>
<div id="container1">
<div id="left">By TrueLogic Company
<p>Edited By International Electronic Components</p>
</div>
<div id="right">
<div id="time2"></div>[LastBuuild]
<p>
<div id="time"></div>
</p>
</div>
</div>
</body>
</html>
并且在页面中我希望它加载到香港专业教育学院尝试了几次,但这就是我现在所拥有的。
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.0/jquery.min.js"></script>
<script type="text/javascript">
function refreshPage () {
var page_y = document.getElementsByTagName("body")[0].scrollTop;
window.location.href = window.location.href.split('?')[0] + '?page_y=' + page_y;
}
window.onload = function () {
setTimeout(refreshPage, 3000);
if (window.location.href.indexOf('page_y') != -1 ) {
var match = window.location.href.split('?')[1].split("&")[0].split("=");
document.getElementsByTagName("body")[0].scrollTop = match[1];
}
{
$('#container').load('C:/Program%20Files/TrueChem/Data/dashboard/src/Test.HTML #container1');
}
}
</script>
<div id="container">
答案 0 :(得分:0)
这里有一个很多不必要的代码,但如果我猜我会说问题是这样的:
$('#container').load('C:/Program%20Files/TrueChem/Data/dashboard/src/Test.HTML #container1');
您正尝试通过JavaScript从本地文件系统加载文件。这对明显的安全性原因不起作用。 (想象一下,如果任何网站可以访问您的本地文件。)
当您使用浏览器调试工具时,这是否会尝试发出AJAX请求?它会抛出错误吗? (我猜/希望后者。)
您的AJAX请求需要是HTTP主机(基本上是Web服务器),它将响应相关数据。 JavaScript无法加载本地文件。
编辑:根据下面的评论主题,听起来问题的核心在于您尝试通过另一个页面的AJAX加载一些JavaScript代码。这可能行不通。该页面实际上没有您正在寻找的值,它具有生成值的代码。当您通过AJAX获取代码时,可能没有执行该代码。
但是,因为它是你所追求的代码而不是页面的内容,所以你甚至不应该通过AJAX加载页面。您应该将代码放在单独的文件中,并在两个页面上引用该文件。
只需将JavaScript代码移动到.js文件中,并在两个页面上引用该文件:
<script type="text/javascript" src="dateTimeCalculations.js"></script>
这将使您可以访问生成值的代码,并且可以将该值填充到页面上的元素中。