我有两个用javascrips AJAX填充的表,问题是我要对两个数据表都使用数据表,它们都在同一页上。
桌子
<table id="Table01" class="table table-hover display">
<thead>
<tr id="tr_tablita">
<th>#</th>
<th>Código</th>
<th>Producto</th>
<th>Precio</th>
<th>Cantidad</th>
<th>Total</th>
<th>Movimientos</th>
</tr>
</thead>
<tbody id="tabla_get_articulos_venta">
</tbody>
</table>
<table id="table02" class="table table-hover display">
<thead>
<tr>
<th>#</th>
<th>Código</th>
<th>Producto</th>
<th>Precio</th>
<th>Proveedor</th>
<th>Movimientos</th>
</tr>
</thead>
<tbody id="tabla_get_articulos">
</tbody>
</table>
我填表
var id_venta = <?php echo $id_venta;?>; // traigo el id de la venta para poder editar la venta
var contador = 1;
$(document).ready(function(){
get_articulos_venta(id_venta);
get_articulos();
// $('table.display').DataTable();
var allTables = $('table.display').DataTable();
});
function get_articulos() {
$.ajax({
url : "<?php echo base_url('Ventas_controller/get_articulos')?>",
type: "POST",
dataType: "JSON",
success: function(data) {
var html = '';
var contador_art = 1;
var filas = data.length;
for ( i = 0 ; i < filas; i++){ //cuenta la cantidad de registros
html += "<tr><td>" +
contador_art + "</td><td>" +
data[i].codigo + "</td><td>" +
data[i].descripcion + "</td><td>" +
"$ "+data[i].precioCompra + "</td><td>" +
data[i].proveedor + "</td><td>"+
"<a type='button' onclick='add_articulo_venta("+data[i].ideArticulo+")' class='btn btn-success'>" +
"<i class='fa fa-plus' style='color:#fff;'></i>" +
"</a>" +"</td><tr>" ;
contador_art++;
}
$('#tabla_get_articulos').html(html);
},
error: function (jqXHR, textStatus, errorThrown) {
swal({
title: "Error!",
text: "No trajeron los artículos del sistema!",
icon: "error",
button: true,
dangerMode: false,
})
.then((willDelete) => {
if (willDelete) {
}
});
}
});
}
function get_articulos_venta(id_venta) {
$.ajax({
url : "<?php echo base_url('Ventas_controller/get_articulos_venta')?>/"+id_venta,
type: "POST",
dataType: "JSON",
success: function(data) {
var html = '';
var filas = data.length;
for ( i = 0 ; i < filas; i++){ //cuenta la cantidad de registros
html += "<tr><td>" +
contador + "</td><td>" +
data[i].codigo + "</td><td>" +
data[i].descripcion + "</td><td>" +
"$ "+data[i].precioCompra + "</td><td>" +
data[i].cantidad + "</td><td>"+
data[i].preciototal + "</td><td>"+
"<a type='button' onclick='delete_articulo_venta("+data[i].ideDetalleVenta+")' class='btn btn-danger'>" +
"<i class='fa fa-times' style='color:#fff;'></i>" +
"</a> " +
"<a type='button' onclick='get_info_articulo_venta("+data[i].ideDetalleVenta+")' class='btn btn-warning'>" +
"<i class='fa fa-pencil' style='color:#fff;'></i>" +
"</a>" +"</td></tr>" ;
contador++;
}
$('#tabla_get_articulos_venta').html(html);
},
error: function (jqXHR, textStatus, errorThrown) {
swal({
title: "Error!",
text: "No trajeron los artículos de la venta!",
icon: "error",
button: true,
dangerMode: false,
})
.then((willDelete) => {
if (willDelete) {
}
});
}
});
}
get_articulos_venta(参数);填写第一张桌子
get_articulos();填写第二张桌子
我需要将数据表应用于两个表
试试这个选项
https://datatables.net/examples/basic_init/multiple_tables.html
这就是结果
应用设计数据表,但它们看起来好像是空表一样。
最佳答案
在ajax调用的成功函数中,for循环之后将建立表,并初始化数据表。
function get_articulos_venta(id_venta) {
$.ajax({
url : "<?php echo base_url('Ventas_controller/get_articulos_venta')?>/"+id_venta,
type: "POST",
dataType: "JSON",
success: function(data) {
var html = '';
var filas = data.length;
for ( i = 0 ; i < filas; i++){ //cuenta la cantidad de registros
html += "<tr><td>" +
contador + "</td><td>" +
data[i].codigo + "</td><td>" +
data[i].descripcion + "</td><td>" +
"$ "+data[i].precioCompra + "</td><td>" +
data[i].cantidad + "</td><td>"+
data[i].preciototal + "</td><td>"+
"<a type='button' onclick='delete_articulo_venta("+data[i].ideDetalleVenta+")' class='btn btn-danger'>" +
"<i class='fa fa-times' style='color:#fff;'></i>" +
"</a> " +
"<a type='button' onclick='get_info_articulo_venta("+data[i].ideDetalleVenta+")' class='btn btn-warning'>" +
"<i class='fa fa-pencil' style='color:#fff;'></i>" +
"</a>" +"</td></tr>" ;
contador++;
}
$('#tabla_get_articulos_venta').html(html);
$('#tabla_get_articulos_venta').DataTable({
select: true,
searching: true
});
},
error: function (jqXHR, textStatus, errorThrown) {
swal({
title: "Error!",
text: "No trajeron los artículos de la venta!",
icon: "error",
button: true,
dangerMode: false,
})
.then((willDelete) => {
if (willDelete) {
}
});
}
});
}
关于javascript - 将数据表放在同一页中的两个表中,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57206441/