我想在我的表上自动增加数字
表通过jquery从ajax请求加载数据,如下所示
function loadData(){
$.ajax({
type: "post",
url: "../myCrud/display.php",
dataType: "html", //expect html to be returned
success: function(result){
var resObj = JSON.parse(result);
var dataHandler = $("#loader");
$.each(resObj,function(key,val){
i = 1;
for();
var newRow = `<tr><td>${i}</td><td>${val.id}</td><td>${val.product_name}</td><td>${val.stock}</td><td>${val.price}</td><td>${val.product_desc}</td><td>${val.sold}</td><td>${val.img}</td></tr>`
dataHandler.append(newRow);
})
}
})
}
这是我的html代码:
<table class="table table-striped">
<thead>
<tr>
<th>#</th>
<th>Product Id</th>
<th>Product Name</th>
<th>Stock</th>
<th>Price</th>
<th>Product Description</th>
<th>Sold</th>
<th>Image</th>
</tr>
</thead>
<tbody id="loader">
</tbody>
</table>
我希望“#”栏的号码是自动的。
你就快到了。 只需计算length
并使用eq
即可。
var resObj = JSON.parse(result);
var length = Object.keys(resObj ).length;
$('.table-striped th').eq(0).html(length);
null
function loadData(){
let i = 1;
$.ajax({
type: "post",
url: "../myCrud/display.php",
dataType: "html", //expect html to be returned
success: function(result){
var resObj = JSON.parse(result);
var dataHandler = $("#loader");
$.each(resObj,function(key,val){
i = i+1;
for();
var newRow = `<tr><td>${i}</td><td>${val.id}</td><td>${val.product_name}</td><td>${val.stock}</td><td>${val.price}</td><td>${val.product_desc}</td><td>${val.sold}</td><td>${val.img}</td></tr>`
dataHandler.append(newRow);
})
}
})
}
在您的文章中,您只在循环内部声明i
,而不是递增,因此将i
放在循环外部并在循环内部递增
function loadData(){
$.ajax({
type: "post",
url: "../myCrud/display.php",
dataType: "html", //expect html to be returned
success: function(result){
var resObj = JSON.parse(result);
var dataHandler = $("#loader");
var i = 1;
$.each(resObj,function(key,val){
i = i++;
for();
var newRow = `<tr><td>${i}</td><td>${val.id}</td><td>${val.product_name}</td><td>${val.stock}</td><td>${val.price}</td><td>${val.product_desc}</td><td>${val.sold}</td><td>${val.img}</td></tr>`
dataHandler.append(newRow);
})
}
})
}