【问题标题】:How to make checkboxes in sidebar 2 columns如何在侧边栏 2 列中制作复选框
【发布时间】:2020-05-05 01:47:06
【问题描述】:

所以我有一张表,我在其中添加了一个自定义菜单(我在 google 中搜索并找到了该菜单)。

自定义菜单显示一个对话框(见下图)它返回我在特定单元格中的所有数据验证,每个单元格都有一个复选框,因此我可以选择多个选项并将其返回到单个单元格中。

代码如下:

<div style="font-family: arial;">
<? var data = valid(); ?>
<form id="form" name="form">
<? if(Object.prototype.toString.call(data) === '[object Array]') { ?>
<? for (var i = 0; i < data.length; i++) { ?>
<? for (var j = 0; j < data[i].length; j++) { ?>
<input type="checkbox" id="ch<?= '' + i + j ?>" name="ch<?= '' + i + j ?>" value="<?= data[i][j] ?>"><?= data[i][j] ?>&nbsp;
<? } ?>
<? } ?>
<? } else { ?>
<p>Maybe current cell doesn't have <a href="https://support.google.com/drive/answer/139705?hl=en">Data validation...</a></p>
<? } ?>
<br>
<br>
<input type="button" value="Fill Current Cell" onclick="google.script.run.fillCell(this.parentNode)" />
<input type="button" value="Clear Selections" onclick="reset()" />
</form>
</div>

任何人都知道我怎样才能使它成为 2 列而不是那样?感觉这个布局太乱了

【问题讨论】:

  • 试试css: flexbox
  • 另一个你可以尝试的方法是创建一个 HTML 表格。
  • hmm 抱歉,我对这些(flexbox 和 html 表)一无所知,因为我只是参考我在这里看到的代码来制作自定义菜单。 gist.github.com/arthurattwell/aa5afc178624bdd6f46c2d0d28d06136 你能帮我做些什么吗?谢谢

标签: html css google-apps-script google-sheets


【解决方案1】:

使用您的输入创建一个无序列表,并使用 css 为 ul 指定 2 列。

例子:

HTML

<ul>
  <li><input type="checkbox">Option 1</li>
  <li><input type="checkbox">Option 2</li>
  <li><input type="checkbox">Option 3</li>
  <li><input type="checkbox">Option 4</li>
  <li><input type="checkbox">Option 5</li>
</ul>

CSS

ul {
    columns: 2;
    -webkit-columns: 2;
    -moz-columns: 2;
}

JS 小提琴

ul {
  columns: 2;
  -webkit-columns: 2;
  -moz-columns: 2;
  list-style-type: none;
}
<ul>
  <li><input type="checkbox">Option 1</li>
  <li><input type="checkbox">Option 2</li>
  <li><input type="checkbox">Option 3</li>
  <li><input type="checkbox">Option 4</li>
  <li><input type="checkbox">Option 5</li>
</ul>

对于您的情况,您应该执行以下操作:

<ul>
<? for (var i = 0; i < data.length; i++) { ?>
<? for (var j = 0; j < data[i].length; j++) { ?>
<li><input type="checkbox" id="ch<?= '' + i + j ?>" name="ch<?= '' + i + j ?>" value="<?= data[i][j] ?>"></li>
<? } ?>
<? } ?>
</ul>

参考资料:

【讨论】:

  • 该列表来自数据验证。你觉得可以用吗?
  • 不确定我理解你的意思。但是通过用
      包装 for 循环和用
    • 包装输入,您将获得输入的无序列表。
猜你喜欢
  • 2022-10-14
  • 2015-10-20
  • 2020-06-16
  • 2021-12-15
  • 1970-01-01
  • 2022-01-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多