gpt4 book ai didi

html - 如何检查InputElement是否是Dart中的复选框

转载 作者:行者123 更新时间:2023-12-03 03:18:43 25 4
gpt4 key购买 nike

我正在dart:html中将某些表单序列化为JSON

Map jsonifyForm(String formQuery){

FormElement form = querySelector(formQuery);

Map<String, String> data = {};

List<InputElement> inputs = form.querySelectorAll("input.json");
for (InputElement input in inputs) {

if (input is CheckboxInputElement){
print("checkbox: " + input.name + "|" + input.checked.toString());
data.putIfAbsent(input.name, () => input.checked);
} else {
print("text: " + input.name + "|" + input.value);
data.putIfAbsent(input.name, () => input.value);
}
}

print(data);
return data;
}

我在页面上大约有100个输入字段,后面只有一个复选框:
<label>First Name</label>
<input type="text" class="form-control tip json" placeholder="First Name" name="firstName" value="" data-toggle="tooltip" data-placement="top" title="First Name"/>


<label>Last Name</label>
<input type="text" class="form-control tip json" placeholder="Last Name" name="lastName" value="" data-toggle="tooltip" data-placement="top" title="Last Name"/>

...

<label class="form-control tip" data-placement="top" title="VAT On Goods" data-toggle="tooltip">
<input class="json" type="checkbox" name="vatOnGoods">
VAT on goods
</label>

当我调用jsonifyForm时,我看到所有输入都被视为复选框:
checkbox: firstName|false
checkbox: lastName|false
...
checkbox: vatOnGoods|false

{firstName: false, lastName: false, ..., vatOnGoods: false}

这是一个错误还是我在这里做错了什么?

最佳答案

CheckboxInputElement类仅提供valuechecked属性。我仍然想知道为什么它说这些都是复选框。但是您可以只检查type属性:

if(input.type == 'checkbox')

检查复选框的类型。

关于html - 如何检查InputElement是否是Dart中的复选框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29225791/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com