JQuery:页面加载时无法为 DataTable 中的所有页面设置 ON/OFF 按钮

JQuery : On page load not able to set ON/OFF button for all pages in DataTable

我是 JQuery 的新手。当页面加载并且 javascript 将所选项目的按钮更改为 on 时,它在 table 中的 across multiple 页面不起作用。 页面上的current javascript searches the markup改变按钮。有什么方法可以使用 datatable API 来解决这个问题吗?请帮忙提供一些示例代码,因为我是新手。

$(document).ready(function() {
        datatableBind();
    });

    $('#tblInProcess').dataTable( {
        "drawCallback": function( settings ) {
            //Your button change code will be here.
            datatableBind();
        }
  });

  function datatableBind(){
    var stringJson = $("#DynamicContentJson").val();
        if(stringJson) {
            var dynamicData = $.parseJSON($("#DynamicContentJson").val());
            for(var i=0; i<dynamicData.IdValueStringLists[0].Values.length; i++) {
                var nameText = dynamicData.IdValueStringLists[0].Values[i];                 
                $("tr:contains('"+nameText+"')" ).find('button').addClass('btn-success').text('ON');                
                console.log(nameText)
                $('<input>').attr({
                    type: 'hidden',
                    value: nameText,
                    id: 'Content_DynamicContent_IdValueStringLists[0]_Values',
                    name: 'Content.DynamicContent.IdValueStringLists[0].Values[' + i + ']'
                }).appendTo("#Selected_Items");
            }
        }  
  }

如果您使用的是 Jquery DataTable plugin,那么以下解决方案将适用于您。

您应该将按钮更改代码移至 DrawCallback DataTable 事件。当您切换 table.

的所有页面时,此事件将始终调用

例如

 $('#example').dataTable( {
        "drawCallback": function( settings ) {
            //Your button change code will be here.
        }
  });