我尝试学习ajax-php配置背后的魔力,以便我尝试通过php实现像时钟这样的代码。但是,似乎我仍然缺少一些东西。这是我到目前为止所做的。
HTML(单击时启动时钟)
<div id="bu" onclick="clock()">asccasascascsc</div>
JS
<script type="text/javascript">
var a = 0;
function clock() {
$.ajax({
type: "GET",
url: "asd.php",
data: {
'p':a
},
dataType: "json",
cache: false,
success: function(data) {
$('#bu').html(data.p);
setTimeout (clock (),10000 );
},
});
}
</script>
在这里我想用整数1替换“bu”并创建一个循环以每1秒增加一个数字。我知道setTimeout函数只能工作一次(我是一个骗子从我读的地方:) :)但我每次都在调用它。
PHP(asd.php)
<?php
$asd = $_GET['p'];
$asd++;
$data = array();
$data['p'] = $asd;
echo json_encode($data);
?>
PHP是我增加部分的地方。
那么,为什么它不起作用?我只看到1但没有更多。 注意:我很新,你可以看到:)
答案 0 :(得分:0)
尝试以下操作:
<script type="text/javascript">
var a = 0;
function clock() {
$.ajax({
type: "GET",
url: "asd.php",
data: {'p': a},
dataType: "json",
cache: false,
success: function(data) {
a = data.p;
$('#bu').html(data.p);
setTimeout(clock, 10000);
},
});
}
</script>
如果您想提高$('#bu')
值,则需要增加a
,这是每次ajax rquest之后填充$('#bu').html()
的内容。