如何在golang html模板中使用算术运算符

How to use arithmetic operator in golang html template

我想比较 html go temple 中的字段 'FileSize' 与代码中的变量 'minsize' (.FileSize < *minsize)。我不知道该怎么做。见下文

{{ if lt .FileSize *minsize }}
<td style="color:red;">{{.FileSize}}</td>
{{else}}
<td>{{.FileSize}}</td>
{{end}}

Akama Razor 告诉我,你不需要在这里使用 GO 代码。 在这种情况下使用 JS 会好得多。

祝你好运!

s = document.getElementsByTagName('td');

for (i = 0; i < s.length; i++) {
  if (parseInt(s[i].innerText) > 123) {
    s[i].style = 'color:red';
  }
}
<head lang="en">
  <title>123</title>
</head>

<body>
  <table>
    <tbody>
      <tr>
        <td>123</td>
        <td>1234</td>
      </tr>
    </tbody>
  </table>
  <script>
    s = document.getElementsByTagName('td');
    for (i = 0; i < s.length; i++) {
      if (parseInt(s[i].innerText) > 123) {
        s[i].color = '#fff';
      }
    }
  </script>
</body>

问题出在您的 minsize 变量中的 *。如果你试图取消引用一个指针,你必须在 go 代码中而不是在模板中这样做。这就是 9000 有效而 *minsize 无效的原因。