簡體   English   中英

使用帶有多個參數的 lapply() 生成 html 代碼

[英]Generate html code using lapply() with multiple arguments

我正在嘗試使用lapply()在循環中生成幾個 html 段落。 這些段落在data.frame ,而data.frame有更多的列,其中包含段落的詳細信息(類、id 等)。 我只能用一個參數生成循環,問題是我想要lapply()循環中的多個參數。 有誰知道如何做到這一點?

數據data.frame

df = data.frame(paragraph = c("paragraph1","paragraph2","paragraph3"),
                class= c("alert", "good", "alert"),
                id= c("id_1","id_2", "id_3"))

目標是獲得以下輸出:

<div>     
     <p class="alert" id="id_1">paragraph1</p> 
     <p class="good" id="id_2">paragraph2</p> 
     <p class="alert" id="id_3">paragraph3</p> 
</div>

lappy()循環(僅用於一個參數):

library(htmltools)
tags$div(lapply(df$paragraph, function(x){tags$p(class="", id="", x)}))

我如何能做到這一點,這樣的classid被填充在列中的數據classiddf

您可以按行apply ,並按如下方式指定數據框中的類、ID 和內容。

library(htmltools)

tags$div(apply(df, 1, function(x) {
  tags$p(class = x[["class"]], id = x[["id"]], x[["paragraph"]])
}))

輸出

<div>
  <p class="alert" id="id_1">paragraph1</p>
  <p class="good" id="id_2">paragraph2</p>
  <p class="alert" id="id_3">paragraph3</p>
</div>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM