var i不能自增是咋回事?
function getdata(){
var i = 0;
$.ajax({
type: 'POST', // 这是请求的方式 可以是GET方式也可以是POST方式, 默认是GET
url: ' /e/ajax2.php ', // 这是请求的连接地址 一般情况下这个地址是后台给前端的一个连接,直接写就可以
dataType: 'json', // 这是后台返回的数据类型 一般情况下都是一个json数据, 前端遍历一下就OK
async: true, // 默认为true,默认为true时,所有请求均为异步请求,如果需要发送同步请求,需设置为false,
timeout: 8000, // 设置请求超时时间(毫秒)。此设置将覆盖全局设置
data: { page: i ,
// 要传递的参数
},
beforeSend: function () {
// 在发送请求前就开始执行 (一般用来显示loading图)
},
success: function (data) {
if(data){
var str = "";
for(var key in data){
var str = '<ul class="arrow_box">';
var str = str +'<div class="sy"><p>';
var str = str + '<img src="'+data[key]['titlepic']+'" alt="'+data[key]['title']+'" title="'+data[key]['title']+'" />'+data[key]['smalltext']+'';
var str = str + '<span class="dateview">'+data[key]['newspath']+'</span>';
var str = str + '</p></div>';
var str = str + '</ul>';
$(".bloglist").append(str);
}
i++;
alert(i);
}
// 发送请求成功后开始执行,data是请求成功后,返回的数据
},
complete: function () {
//当请求完成后开始执行,无论成功或是失败都会执行 (一般用来隐藏loading图)
},
error: function (xhr, textStatus, errorThrown) {
// 请求失败后就开始执行,请求超时后,在这里执行请求超时后要执行的函数
}
})
}
</script>
你为什么把i放在for循环的外面
var i=0放到函数外部,要不每次执行一次都会初始化为0
var i = 0;///////////
function getdata(){
var str = str + 'data[key][key][titlepic] == "" ? data[key]['smalltext'] : ''+data[key]['smalltext']+'';
怎么做成三元运算符
把i放在for循环内部