No description
Find a file
2022-12-15 18:50:44 +09:00
src add input title 2022-12-15 18:46:25 +09:00
tests add input title 2022-12-15 18:46:25 +09:00
.gitignore make list objects 2022-04-12 21:11:10 +09:00
htmlgenerator.nimble v0.1.7 2022-12-15 18:50:29 +09:00
LICENSE Initial commit 2022-03-08 19:25:00 +09:00
README.md update README.md 2022-05-24 21:13:35 +09:00

htmlgenerator nimble

Generate HTML string by nim object

Use

import htmlgenerator

var data: seq[seq[string]]
data.add(@["row1", "value1", "0"])
data.add(@["row2", "value2", "0"])
data.add(@["row3", "value3", "1"])
data.add(@["row4", "value4", "0"])

var ipt: hinput
ipt.name = "iname"
# ipt.toHtml == """<input name="iname" />"""

var btn: hbutton
btn.value = "bvalue"
btn.content = "bcontent"
# btn.toHtml == """<button value="bvalue">bcontent</button>"""

var tbl: htable
for d in data:
  var
    row: htr
    th: hth
    td: htd
  th.content = d[0]
  row.add(th)
  td.content = d[1]
  row.add(td)
  tbl.rows.add(row)
#[
tbl.toHtml == """<table>
  <tr>
    <th>row1</th>
    <td>value1</td>
  </tr>
  <tr>
    <th>row2</th>
    <td>value2</td>
  </tr>
  <tr>
    <th>row3</th>
    <td>value3</td>
  </tr>
  <tr>
    <th>row4</th>
    <td>value4</td>
  </tr>
</table>"""
]#

var sel: hselect
for d in data:
  var opt: hoption
  opt.content = d[1]
  opt.selected = d[2] == "1"
  sel.add(opt)
#[
sel.toHtml == """<select>
  <option>value1</option>
  <option>value2</option>
  <option selected>value3</option>
  <option>value4</option>
</select>"""
]#

Prease Pull Request!