Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xpath以确定复选框“;勾选“;seleniumide中的属性_Xpath_Selenium_Selenium Ide - Fatal编程技术网

Xpath以确定复选框“;勾选“;seleniumide中的属性

Xpath以确定复选框“;勾选“;seleniumide中的属性,xpath,selenium,selenium-ide,Xpath,Selenium,Selenium Ide,如何通过xpath确定复选框是否处于选中状态 目前我正在尝试: //input[@type='checkbox' and @checked='true')] 我有多个ID相同的复选框,因此我必须选择下一个未选中的复选框 具体来说,我需要这个用于Selenium IDE 编辑 我真正需要的是: |storeXpathCount | //input[@name='xyz' and @checked='checked'] | is_checked | 如果选中复选框“xyz”,则“是否选中”值应

如何通过xpath确定复选框是否处于选中状态

目前我正在尝试:

//input[@type='checkbox' and @checked='true')]
我有多个ID相同的复选框,因此我必须选择下一个未选中的复选框

具体来说,我需要这个用于Selenium IDE

编辑 我真正需要的是:

|storeXpathCount | //input[@name='xyz' and @checked='checked'] | is_checked | 
如果选中复选框“xyz”,则“是否选中”值应为1,否则为0


谢谢

像这样的东西可能有用:


//输入[@checked='checked']/以下同级::*[1][not(@checked='checked')]

这里的
stnewrecord
是复选框的类别。 脚本将存储复选框的编号,并根据该编号循环。 它将检查复选框是否已选中,如果未选中,它将选中“否则”并移动到下一步

xpath=(//input[@class='stnewrecord'])[${i}]  
这是复选框的xpath。”i’是位置,它将在每次迭代中增加

让我知道它是否适用于您。

xpath

// Xpath, only works in certain situations
//input[@type='checkbox' and @checked='xyz']
仅当复选框的HTML源中有如下属性时才有效

checked="xyz"
开发人员可以自由地将“xyz”替换为任何内容:“true”、“checked”、“ischecked”

因此,如果没有这样的属性,上述xpath就不起作用

<> P>在等待更多的洞察力时,您可以考虑使用CSS选择器,它不依赖于这样的属性:

// CSS selector, for all checkboxes which are checked
input:checked[type='checkbox']

// CSS selector, for all checkboxes which are not checked
input:not(:checked)[type='checkbox']
注意,没有

[type='checkbox']

您还将获得收音机:-)

但是,有一种解决方案不使用css类和选择器

使用

而不是

//input[@type='checkbox' and @checked='xyz']
你可以试试这些:

//*[@type='radio'][@checked='checked']/
//*[@type='radio'][not(@checked='checked')]/

//input[@checked='checked']
不工作这就是问题所在:(请再次检查我的问题Hanks明白了
storeValue |//input[@name='xyz']]是否已选中
将存储“开”或“关”取决于复选框是否被选中,我想你没有领会我的意思,我需要使用Seleinum IDE的具体内容。你在Selenium IDE中尝试过吗?@选中的值是“开”或“关”它不是布尔值!我没有在IDE中尝试过这一点,但我使用这个表达式和Selenium扩展来表示PHPUnit。但是,我认为x路径引擎对于这两种工具都是相同的。如果您在IDE中尝试过,请告诉我。是的,我对selenium IDE进行了一些测试,它不会返回布尔值,而是@checked Attribute的“开”、“关”,我在这里发布,但从2018年起,这是错误的。(在Chrome浏览器中尝试。)谢谢,我们严格地说是在Selenium IDE的上下文中进行讨论的,在这种上下文中,它的
@checked
attirbutes具有“开”或“关”值,请阅读上面的历史答案。我已经在Selenium IDE中测试了这些,看起来它正在工作,但我可能是错的,因为我正在寻找类似的东西。
//input[@type='checkbox' and @checked='xyz']
//*[@type='radio'][@checked='checked']/
//*[@type='radio'][not(@checked='checked')]/