Как отключить флажок строки на основе значения ячейки в Datatables jquery

#jquery #angularjs #datatables

#jquery #angularjs #таблицы данных

Вопрос:

Как отключить флажок строки на основе значения ячейки в таблицах данных. У таблицы и нескольких столбцов есть данные, подобные System. Если это системная необходимость, отключите строку. Попробовал приведенный ниже код, флажки не отключены.

 this.dtOptions = {
  ajax: 'assets/test.json',
  initComplete: function (settings, json) {
    $.each(json.data, function (index, value) {  
      if(value.matchType == "System"){ //working
        $("table").closest('tbody tr td').find('input:checkbox').prop('disabled', true);
      } 
  }); 
  },
  

Комментарии:

1. В вашем коде, где вы сравниваете значение ячейки?

2. В условном операторе if(value.MatchType == «System»)

Ответ №1:

В вашем коде, если index — это ваш индекс строки, вы можете попробовать это

 this.dtOptions = {
  ajax: 'assets/test.json',
  initComplete: function (settings, json) {
    $.each(json.data, function (index, value) {  
      if(value.matchType == "System"){ //working
        $("table tr").eq(index).find('input:checkbox').prop('disabled', true);
      } 
  }); 
  },
  

Ответ №2:

Ответ от @Yuvraj вдохновил меня на следующее решение с событием «createdRow»

 'createdRow': function (row, data, dataIndex) {
    if (!data.isAvailable /* some condition based on data */) {
        $(row).find('input:checkbox').prop('disabled', true);
    } 
}