2016-12-19 4 views
0

Я использовал DataTable 1.7.6 и теперь изменили его до 1.10 ниже функции дает EROR после обновления версииoTable.fnGetNodes не является функцией DataTable обработки 1.10.13 на стороне сервера

$('.buttonclass').click(function() { 
    var id = ""; 
    var oTable = $("#users").DataTable(); 
    $(".groupCheckBox:checked", oTable.fnGetNodes()).each(function() { 
     alert(id); 
     if (id != "") { 
      id = id + "," + $(this).val(); 
     } else { 
      id = $(this).val(); 
     } 
     document.getElementById("email").value = id; 
    }); 
}); 

ошибки
Uncaught TypeError: oTable.fnGetNodes is not a function 

пожалуйста, помогите

+0

Используйте '$ (). DataTable(). FnGetNodes()' использовать метод унаследованной на DataTable 1.10.x API. Существует много тождественных вопросов, касающихся этого вопроса, например, с этого дня http://stackoverflow.com/questions/41211119/datatables-1-6-vs-1-10-code-issues/41218639#41218639 – davidkonrad

ответ

1

в DataTables v1.10 функции имена изменились, по сравнению со всеми версиями, начиная с v1.9.

Я предполагаю, что вы ищете для этого метода: https://datatables.net/reference/api/rows().nodes()

ССЫЛКА ссылки

Это наследие ссылка: http://legacy.datatables.net/ref

С v1.10 ссылка здесь: https://datatables.net/reference/

+0

что-то как это ? $ (". groupCheckBox: checked", oTable.rows ('.groupCheckBox: checked') .nodes(). to $()). each (function() { – fdz

+0

Не зная полного контекста, это трудно понять, что вы хочу достичь. В настоящее время вы создаете ALERT для каждой строки, возможно, для целей отладки. Мое предположение заключается в том, что вы выполняете итерацию по каждой строке с определенным текстовым полем, чтобы получить значение? Проверьте эту функцию API, возможно, это используйте для вас: https://datatables.net/reference/api/rows() .every() –

+0

да, что я хочу, когда кнопка нажата, получите значения щелчков. pls advice – fdz

0

Вместо этого используетсяDataTable()использоватьdataTable()ошибка исчезнет.

$('.buttonclass').click(function() { 
    var id = ""; 
    var oTable = $("#users").dataTable(); 
    $(".groupCheckBox:checked", oTable.fnGetNodes()).each(function() { 
     alert(id); 
     if (id != "") { 
      id = id + "," + $(this).val(); 
     } else { 
      id = $(this).val(); 
     } 
     document.getElementById("email").value = id; 
    }); 
}); 
+0

У меня такая же проблема, так будет ли dataTable работать с 1.10.13, а в этом случае? pls advice –

+0

@Tharuperera Да –

Смежные вопросы