0

我的 WebTest 响应中有一个带有一组复选框(都在相同的字段名称下)的表单,我想根据它们的值取消选中其中的一些。我试过这个:

my_form = response.forms['form-i-want']
for i in range(len(my_form.fields.get('field-i-want'))):
    if my_form.fields.get('field-i-want')[i].value == "value-to-uncheck":
        my_form.fields.get('field-i-want')[i].checked = False

显然,这是非常 hacky 的代码,必须有更好的方法。此外,这实际上并没有取消选中我想要的框:当我遍历表单中的复选框时,不再有一个具有 value 的元素value-i-want: value 已设置为None. 当我提交表单时,它的行为就像没有对表单做任何事情一样。

4

1 回答 1

0

不幸的是,您设置checked输入状态的方法确实会产生删除输入元素的不良副作用。

根据文档,要将复选框输入标记为已选中,您需要编写:

my_form['field-i-want'] = True

输入元素'field-i-want'的属性值在哪里。name

于 2016-11-18T16:55:11.423 回答