错误:火狐在元素列表后给我“缺少]”
Error: firefox gives me “missing ] after element list”
我想做的是使用 ajax 从另一个 php 文件中获取时间。
所以javascript代码看起来像这样:
var timeNow = setInterval(
$.ajax({
url: "process/time.php",
success: function(msg) {
$('#time').text(msg);
}
}), 1000);
这是它发布的 php 代码。
<?php echo gmdate('h:i:s A', time() + 8 * 3600);?>
有什么想法吗?
可以使用
函数对象以及要执行的代码字符串来调用setInterval
。 $.ajax
返回一个 jqXHR
对象,该对象被强制转换为字符串 "[object Object]"
。然后,此字符串作为代码执行,并引发错误。
您希望将$.ajax
调用包装在一个函数中:
var timeNow = setInterval(function() {
$.ajax({
url:"process/time.php",
success: function(msg) {$('#time').text(msg);}
});
}, 1000);
<?php
if(isset($_SERVER['HTTP_X_REQUESTED_WITH']) &&
strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) === 'xmlhttprequest'){
header('Content-Type: application/json');
echo json_encode(array('server_time'=>gmdate('h:i:s A', time() + 8 * 3600)));
die;
}
?>
<script src="http://code.jquery.com/jquery-1.7.2.min.js"></script>
<script>
function polltime(){
setTimeout(function(){
$.ajax({ url: "./get_time.php", cache: false,
success: function(data){
$("#time").replaceWith("<p id='"time'">"+data.server_time+"</p>");
polltime();
}, dataType: "json"});
}, 1000);
}
$(document).ready(function(){
polltime();
});
</script>
<p id="time"><?php echo gmdate('h:i:s A', time() + 8 * 3600);?></p>
var timeNow = setInterval(
function() { // you missed function within setInterval()
$.ajax({
url: "process/time.php",
success: function(msg) {
$('#time').text(msg);
}
}, 1000);
一个更简单的解决方案如下:
var timeNow = setInterval(
function() {
$("#time").load("process/time.php");
}, 1000);
参见jQuery load()
方法;它是为这种事情而设计的。
var timeNow = setInterval(
$.ajax({
url: "process/time.php",
success: function(msg) {
$('#time').html(msg); //you have to use html instead
}
}), 1000);
创建一个函数并将您的代码放在该函数上,然后在<body onload"function_name();">
上调用它
相关文章:
- 为什么在变形之前不缺少Fx
- 自动修复”;语句前缺少分号“;
- Javascript复选框函数:;缺少:在属性id之后"
- Internet Explorer缺少占位符支持,特别是密码字段
- 如何在火狐浏览器中禁用F5和刷新
- JavaScript 在数组中查找缺少的数字
- json对象中缺少对象循环
- $(.class).empty总是缺少一个元素
- 使用jQuery插入HTML页面的第一个项目缺少结束标记
- 上传带有XMLHttprequest的文件-多部分/表单数据中缺少边界
- Dynamics 2016内部部署Crm客户端脚本.选项集控件类型缺少方法
- SyntaxError:缺少;before语句使用AJAX
- 用虚线显示缺少的值
- jquery$(this)对象缺少问题
- 参数列表Three.js之后的未捕获语法错误:缺少)
- Url缺少撇号
- 语法错误:缺少:在属性 ID 之后
- 在火狐浏览器卸载之前
- 如果javascript中的else导致缺少值
- 错误:火狐在元素列表后给我“缺少]”