2015-09-01 2 views
2

Я пытаюсь покрасить строки на основе «Статус», который может быть красным/зеленым. Использование dynatable для генерации строк таблицы на основе данных JSON.Раскраски строк на основе значений строк в Dynatable

Проблема в том, что всякий раз, когда я вызываю следующий код из dynatable, он всегда перезаписывается dyntable.process();

$('#mytable tr td').each(function() { 
    if ($(this).text() == 'Red') { 
     $(this).closest('tr').css('background-color', '#f00'); 
    } 
}); 

Мой index.php: http://pastie.org/10389654

Мои index.js: http://pastie.org/10389656

ответ

0

Посмотрите на данный момент в документации: Documentation - Event

И использовать, вероятно, dynatable:beforeUpdate событие

Некоторые из таких способов:

var dynatable = $('#mytable').dynatable({ 
    dataset: { 
     ajax: true, 
     ajaxUrl: './api.php', 
     ajaxOnLoad: true, 
     records: [] 
    }, 
    params: { 
     records: 'data' 
    }, 
    features: { 
     paginate: false, 
     sort: false, 
     pushState: false, 
     search: false, 
     recordCount: false, 
     perPageSelect: false 
    } 
}).data('dynatable').bind('dynatable:afterProcess', changeColor); 

И тогда ваша функция

function changeColor() { 
    $('#mytable tr td').each(function() { 
     if ($(this).text() == 'Red') { 
      $(this).closest('tr').css('background-color', '#f00'); 
     } 
    }); 
} 
Смежные вопросы