如何在mRender:datatables-php-mysql中使用条件

如何在mRender:datatables-php-mysql中使用条件,php,mysql,if-statement,datatables,Php,Mysql,If Statement,Datatables,您好,我使用的是数据表,我得到的记录正确,但从mRender我有3条记录。我想如果条件是真的,那么只有它会显示,否则不会。但它不起作用 另外,我如何使用它的锚定标记下的if条件,我的意思是: <a href="test_list.php?a='+full[20]+'&ab='+full[21]+'" class="click_'+full[22]+'">\n\ '+full[20]+' - if (full[23] == 87 ) { '+ echo TESTER

您好,我使用的是数据表,我得到的记录正确,但从mRender我有3条记录。我想如果条件是真的,那么只有它会显示,否则不会。但它不起作用

另外,我如何使用它的锚定标记下的if条件,我的意思是:

<a href="test_list.php?a='+full[20]+'&ab='+full[21]+'" class="click_'+full[22]+'">\n\
     '+full[20]+' - if (full[23] == 87 ) { '+ echo TESTER +' }  \n\  
</a>

如果条件“TESTER”定义了一个命名常量,请注意上面的内容

以下为表格格式:

$(document).ready( function() {
  var oTable = $('#example').dataTable( {
    "bProcessing": true, 
    "bServerSide": true,
    "sAjaxSource": "test_list_db.php",
    "aoColumnDefs": [ {
      "aTargets": [ 2 ],
      "mData": "null",
      "mRender": function ( data, type, full ) {

                if(full[20] != 0 ){
                var status = '<div id="container">\n\
                        <a href="test_list.php?a='+full[20]+'&ab='+full[21]+'" class="click_'+full[22]+'">\n\
                        '+full[20]+' - '+full[23]+'  \n\
                        </a><br \>\n\  </div>';

                } else if(full[21] != 0){   //  -- if this record is ZERO then will not be seen 
               var status = '<div id="container">\n\
                        <a href="test_list.php?a='+full[0]+'&ab='+full[20]+'" class="click_'+full[0]+'">\n\
                        '+full[21]+' - '+full[24]+'  \n\
                        </a><br\>\n\ </div>';
                } else if(full[22] != 0){
               var status = '<div id="container">\n\
                        <a href="test_list.php?a='+full[0]+'&ab='+full[20]+'" class="click_'+full[0]+'">\n\
                        '+full[22]+' - '+full[25]+'  \n\
                        </a><br\>\n\ </div>';
                }
  return status;

      }
    } ]
  } );
} );
$(文档).ready(函数(){
var oTable=$('#示例')。数据表({
“bProcessing”:正确,
“bServerSide”:正确,
“sAjaxSource”:“test_list_db.php”,
“aoColumnDefs”:[{
“目标”:[2],
“mData”:“null”,
“mRender”:功能(数据、类型、完整){
如果(满[20]!=0){
变量状态='\n\
\n\';
}否则,如果(full[21]!=0){/--
变量状态='\n\
\n\';
}否则如果(满[22]!=0){
变量状态='\n\
\n\';
}
返回状态;
}
} ]
} );
} );
请告诉我哪里出错,以及如何使用锚定标记下的if条件,例如,您尝试consolde.log()或alert()检查if或else if条件是否正常工作,以及编译器是否运行if和else if的内部代码

if(full[20] != 0 ){
   var status = '<div id="container">\n\
      <a href="test_list.php?a='+full[20]+'&ab='+full[21]+'" class="click_'+full[22]+'">\n\
      '+full[20]+' - '+full[23]+'  \n\
       </a><br \>\n\  </div>';
   console.log(status);

}
if(满[20]!=0){
变量状态='\n\
\n\';
控制台日志(状态);
}

之后,在浏览器控制台中检查数据。

谢谢您的回复,因为我被告知,如果结果出现问题,我将首先得到答案。。其中是所有我的条件结果不为零,意味着它应该返回所有,但只返回全部[20]我认为它只检查条件,并返回值。。但是如果我的else if条件也是真的,那么它的值也应该是返回的。。但如果if条件为true,则只有if中的代码将运行else,而else if中的代码不会运行else。您可以更改if条件,如if(full[20]!=0&&full[21]!=0),然后相应地更改else if条件