先给出代码:
$(document).ready(function(){
var i="session";
$("#butt").on("click",function(){
if($("#name").val()=="")
{
alert("不能为空");
}
else{
$.ajax(
{
url:"ceshi.php?q="+Math.random(),
data:{
name:$("#name").val(),
firstname:"T"
},
success:function(result){
i=result;
$("div").html(i);
}
});
}
});
setInterval(function(){$("div").html(i)},50);
});
我想要做的事情是:
让两个相同的页面的数据作同步显示,也就是当我点击一个按钮时就算另外一个页面没有点击按钮也会做出相应的数据显示。
我的代码思想是:
使用$.ajax进行数据的读取,利用PHP中的session对数据做一个暂存,当$.ajax读取到数据以后就把数据赋给一个全局变量。然后我再把这个全局变量在页面上显示出来。
现在的问题是:
当我在定义了一个全局变量i,我把$.ajax的回调函数中把返回值赋值给i,$.ajax外面使用setInercval()方法调用这个i值,但是这个i值并没有赋值成功(直接在$.ajax的回调函数中调用时是赋值成功的)。
所以我在想,难道这两个i值不一样吗?在回调函数中的i难道被重新定义了?
关于jQuery/js变量作用域,及赋值的问题:
答案:2 悬赏:0 手机版
解决时间 2021-01-30 04:57
- 提问者网友:浪荡绅士
- 2021-01-29 08:25
最佳答案
- 五星知识达人网友:执傲
- 2021-01-29 09:41
这个变量i是全局的,当然是一个,主要是你 var i="session";这个地方的问题,应是:
var i="";
var i="";
全部回答
- 1楼网友:舍身薄凉客
- 2021-01-29 11:21
摘自:http://blog.csdn.net/yueshangchuanqi/article/details/6324769
jquery.js没有权限问题
那天页面写得好好的,后来改了一个效果,(美工mm改的),然后提交测试,点击了某个链接后就报了jquery.js 没有权限这个错误了,一开始我以为是链接写错了,于是改来改去,发现都是这个错,于是百度一下,说这是什么跨域访问,我想,我就链个本页面的涵数,不存在什么跨域的问题啊。后来发现,里面不写东西都会报错,于是我在火狐下看到,怎么我写进去的href的内容,变成了"#ui_tabs_"....,是在页面加载后自动生成的内容,把我原来写在里面的href的内容覆盖掉了。
时间紧急,我也就是把这个效果给去掉,自己把切换的效果用js完成。所以,出现jquery.js 没有权限并不一定是跨域访问,也有可能是其他原因导致的,需要从各个方面,细心检查!
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯