for (var i = 0 i < 50 i++) {
row = {checked: true, data: [i,T1[i],D1[i]}
}
在循环中永远重新赋值row。你当然只能得到最后一条数据。
方法一:使用cookie,这里我用的是jquery的cookie插件:
var arr=[1,2,3,4]var v=$.cookie("v")//获取cookie值
var date=$.cookie("d")//获取时间 用来判断是否为同一天
var statestate=new Date(date).getDate()==new Data().getDate?false:true
//上面这句是用来判断日期是否为同一天,这种验证方法只是‘粗糙’的验证,可以到网上搜索一下获取时间间隔的函数 有很多
if(!v){
v=0//如果未取到值则设置为0
}else{
if(state){//如果上面判断出来的不是同一天,则更新cookie
v=v+1
if(v>3){v=0}//如果v大于3,重新开始循环,设为0
$.cookie("v",v)//保存到cookie
$.cookie("d".$.now())
}
}
alert(arr[v])//显示数字
这是把相关数据保存在cookie里,来判断显示的,缺点就是cookie容易被客房端 清理,并且,比如客户A今天访问了,显示的是1,明天没访问,后天来访问了,应该显示为3,但会显示2,所以不推荐使用这种方法。
方法二:用ajax,把要显示的数字,保存在数据库或程序里,用ajax来获取:
$.get("URL地址",function(d){//d就是获取到的数据
alert(d)//直接显示就行
})
获取数据的URL文件里,通过服务器时间来判断要显示的数字,然后输出。
这种方法的优点就是,不受客户端的影响。
$.post('text.action',{....},function(datas){var name=datas.data[0].name
})
如果是多个还可以用循环获取。
$.post('text.action',{....},function(datas){
$.each(datas,function(index,value){
var name=value.name
})
})
以上回答你满意么?
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)