我正在使用App脚本,该脚本采用HTML格式输入&将其写入Google表格。
我在表格提交上运行它如下:
google.script.run
.appscriptfunc();
虽然我能够通过以下方式获取所选Radio选项的值:
$("input[type='radio'][name='radioname']:checked").val()
我通过以下方式获取复选框的ONLY first checked选项的值:
$("input[type='checkbox'][name='checkboxname']:checked").val()
复选框的HTML:
<div><input id="pos1" class="validate" name="Position" required="required" type="checkbox" value="abc">abc</div>
<div><input id="pos2" class="validate" name="Position" required="required" type="checkbox" value="xyz">xyz</div>
<div><input id="pos3" class="validate" name="Position" required="required" type="checkbox" value="pqr">pqr</div>
如何将所有选中选项的值作为字符串(最好是以逗号分隔的字符串)?
答案 0 :(得分:1)
您可以使用.each()
迭代选中的复选框,并通过将其推入数组中来收集数组中的值。
var values = [];
$("input[type='checkbox'][name='Position']:checked").each(function(i, e) {
values.push(e.value);
});
console.log(values);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div><input id="pos1" class="validate" name="Position" required="required" type="checkbox" value="abc">abc</div>
<div><input id="pos2" class="validate" name="Position" required="required" type="checkbox" value="xyz" checked="true">xyz</div>
<div><input id="pos3" class="validate" name="Position" required="required" type="checkbox" value="pqr">pqr</div>
答案 1 :(得分:1)
这个怎么样?如果您选中了&#34; abc&#34;和&#34; xyz&#34;并按下提交按钮,返回{Position: ["abc", "xyz"]
。
function myFunction(e) {
Logger.log(e.Position) // ["abc", "xyz"] if you ckecked "abc" and "xyz"
}
<form>
<div><input id="pos1" class="validate" name="Position" required="required" type="checkbox" value="abc">abc</div>
<div><input id="pos2" class="validate" name="Position" required="required" type="checkbox" value="xyz">xyz</div>
<div><input id="pos3" class="validate" name="Position" required="required" type="checkbox" value="pqr">pqr</div>
<input type="submit" value="Submit" onclick="google.script.run.myFunction(this.parentNode);" />
</form>
如果这不是你想要的,我很抱歉。