Javascript 如何修复dataTable jquery中错误的行选择?
我的php文件中有两个jquery数据表。第一个表从mysql数据库加载到主文件php中。第二个表使用ajax加载到同一个php文件中,但内容取决于在第一个数据表上单击的行 我有一个问题,当我单击第一个dataTable的行时,它会正确加载第二个表。但是,当我单击第二个dataTable中的一行时,无法获得某些值,例如找不到该行。它显示未定义的值Javascript 如何修复dataTable jquery中错误的行选择?,javascript,php,jquery,mysql,datatables,Javascript,Php,Jquery,Mysql,Datatables,我的php文件中有两个jquery数据表。第一个表从mysql数据库加载到主文件php中。第二个表使用ajax加载到同一个php文件中,但内容取决于在第一个数据表上单击的行 我有一个问题,当我单击第一个dataTable的行时,它会正确加载第二个表。但是,当我单击第二个dataTable中的一行时,无法获得某些值,例如找不到该行。它显示未定义的值 $(document).ready(function() { **//I create dataTable 1** var table = $
$(document).ready(function() {
**//I create dataTable 1**
var table = $('#example').DataTable({
"language": {
"url": "//cdn.datatables.net/plug-ins/9dcbecd42ad/i18n/Spanish.json"
}, "dom": '<"toolbar">frtip'
});
**//I create dataTable 2**
var table2 = $('#example2').DataTable({
"language": {
"url": "//cdn.datatables.net/plug-ins/9dcbecd42ad/i18n/Spanish.json"
}, "dom": '<"toolbar">frtip'
});
**//I load dataTable 1**
$('#example tbody').on( 'click', 'tr', function () {
if ( $(this).hasClass('selected') ) {
$(this).removeClass('selected');
}else{
table.$('tr.selected').removeClass('selected');
$(this).addClass('selected');
var getted = table.row('.selected').data();
$.ajax({
type:'POST',
data: 'usuario=' + getted,
url: 'loadF1.php',
success: function(msg) {
$('#example2 tbody').html(msg); //Here set content into div2
}
});
**//I load dataTable 2**
$('#example2 tbody').on( 'click', 'tr', function () {
if ( $(this).hasClass('selected') ) {
$(this).removeClass('selected');
}else{
table2.$('tr.selected').removeClass('selected');
$(this).addClass('selected');
var getted2 = table2.row('.selected').data();
$.ajax({
type:'POST',
data: 'usuario=' + getted2,
url: 'loadF2.php',
success: function(msg) {
$('#example3 tbody').html(msg); //Here set content into div3
}
});
$(文档).ready(函数(){
**//我创建数据表1**
变量表=$('#示例')。数据表({
“语言”:{
“url”:”//cdn.datatables.net/plug-ins/9dcbecd42ad/i18n/Spanish.json”
},“dom”:“frtip”
});
**//我创建数据表2**
变量表2=$('#示例2')。数据表({
“语言”:{
“url”:”//cdn.datatables.net/plug-ins/9dcbecd42ad/i18n/Spanish.json”
},“dom”:“frtip”
});
**//我加载数据表1**
$(#示例tbody')。在('click','tr',function(){
if($(this).hasClass('selected')){
$(this.removeClass('selected');
}否则{
表.$('tr.selected')。removeClass('selected');
$(this.addClass('selected');
var getted=table.row('.selected').data();
$.ajax({
类型:'POST',
数据:“usuario=”+getted,
url:'loadF1.php',
成功:功能(msg){
$('#example2 tbody').html(msg);//此处将内容设置为div2
}
});
**//我加载数据表2**
$('example2 tbody')。在('click','tr',function(){
if($(this).hasClass('selected')){
$(this.removeClass('selected');
}否则{
表2.$('tr.selected')。removeClass('selected');
$(this.addClass('selected');
var getted2=table2.row('.selected').data();
$.ajax({
类型:'POST',
数据:“usuario=”+getted2,
url:'loadF2.php',
成功:功能(msg){
$('#example3 tbody').html(msg);//此处将内容设置为div3
}
});
我做错了什么,为什么当我选择第二个表时,它没有选择行
谢谢!您不能使用html操作更改datatables中的内容…您必须使用datatables方法这可能是错误,但是..刷新内容表的方法是什么?如果我使用.draw(msg)不要做任何事情。要清空表,然后添加新数据…请检查datatables api,谢谢!然后..我有一个新问题,因为我返回了一个带有“\n…”的echo“”代码,以使用html将其添加到tbody中。对于此需要,代码返回json?有一种方法使用json添加数据…或者您需要解析php响应