我正在尝试在 RMarkdown 中的 HTML 表格上使用 JQuery。 具体来说,我正在尝试使用 JQuery 将行类添加到 DT::datatable 的某些行。
我已经在 jsFiddle 中测试了 jQuery 代码,效果很好。我还在 RMarkdown 中测试了基本的 jQuery 代码(更改标题的颜色)。这也有效。我还没有设法获得与 RMarkdown 中的 DT::datatable 上的表相关的 jQuery。
下面的代码来自 .Rmd 文件。
```
# Test
```
```
{js jQuery codechunk}
// Test that jQuery works in Rmd
$('.h1').css('color', 'red')
// Updating classes does not work
$("tr:contains('Mazda')").addClass('Mazda');
// Colour styling also does not work
$("tr:contains('Mazda')").css("color", "red")
```
```
{r R codechunk}
library(DT)
DT::datatable(mtcars)
```
我希望当我检查表格时,带有“Mazda”的行将被涂成红色,并且将具有“Mazda”类。
我只看到普通的DataTable,行类是标准的。
我明白了!请参阅文档第 2.9 节,“
callback
论证。”
我做了以下更改,你的代码运行得非常好。
callback
的 DT::datatable()
参数调用该函数。.h1
更改为 h1
以使示例的这一部分起作用。)顺便说一句,包装很漂亮。谢谢你向我介绍它!
---
title: "It works!"
author: "trianglegirl"
date: "May 20, 2019"
output: html_document
---
```{js jQuery-codechunk}
const trianglegirl_function = function() {
// Test that jQuery works in Rmd
$('h1').css('color', 'red');
// Updating classes does not work
$("tr:contains('Mazda')").addClass('Mazda');
// Colour styling also does not work
$("tr:contains('Mazda')").css("color", "red");
};
```
```{r R-codechunk}
library(DT)
DT::datatable(mtcars, callback = JS('trianglegirl_function();'))
```