我通过JavaScript获取用户时区。并发送ajax请求以在会话中保存该值,以便我可以在进一步的逻辑中使用该值。这工作正常,但第二页加载时可以使用设置值。 有没有办法等待ajax响应并在会话变量可用时开始进一步执行。
我正在使用以下代码
<script type="text/javascript">
$(document).ready(function(){
var tz = jstz.determine();
var timezone = tz.name();
$.post("abc.php", {tz: timezone}, function(data) {
location.reload();
});
});
</script>
<?php
$timezonevalue=$_SESSION['timezone'];
?>
现在我在ajax请求工作正常后重新加载页面,但是这会为用户创建一些中断。有没有办法延迟php执行,直到会话变量可用。
答案 0 :(得分:0)
$.post("abc.php", {tz: timezone}, function(data) {
location.reload();
})
.done(function(data){
// here you are sure the request is done
});
如果您想跟踪错误,也可以添加.error(callback)
。
检查jQuery documentation以获取更多详细信息。