首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何遍历JSON元素列表并使用webdriverio访问它们的属性?

如何遍历JSON元素列表并使用webdriverio访问它们的属性?
EN

Stack Overflow用户
提问于 2016-10-05 02:29:48
回答 2查看 690关注 0票数 0

使用Chimp.js同步样式的webdriverio API

我如何正确地迭代我的元素数组?或者,更具体地说,我如何访问元素本身的属性?我对.elements() function found in the API以及如何从其中提取元素本身感到困惑。

代码语言:javascript
复制
var myItem;
var elemArray = browser.elements('.castMemberPicture').value;
console.log(elemArray);

for (myItem in elemArray){ 
    console.log("myItem: " + myItem);
    //  I can log the JSON obj IDs successfully, but can’t seem to access elements like clientHeight, alt, ...
};

如何访问属性?

(输出)

代码语言:javascript
复制
[ { ELEMENT: '0' },
  { ELEMENT: '1' },
  { ELEMENT: '2' },
  { ELEMENT: '3' }]
myItem: 0
myItem: 1
myItem: 2
myItem: 3

..。对.ELEMENT的调用给出了未定义的调用,所以我很可能使用了API /语法。

我看到了https://github.com/webdriverio/webdriverio/issues/273,但无论我尝试使用.ELEMENT、.value和function的哪种组合,我都无法访问这些属性。帮助?

注意--如果我尝试通过使用console.log("myItem: " + JSON.stringify(elemArray[myItem].ELEMENT));打印来探索元素本身,则输出将变为

代码语言:javascript
复制
[ { ELEMENT: '0' },
  { ELEMENT: '1' },
  { ELEMENT: '2' },
  { ELEMENT: '3' }]
myItem: "0"
myItem: "1"
myItem: "2"
myItem: "3"
EN

回答 2

Stack Overflow用户

发布于 2016-10-05 08:00:14

下面是遍历它并检查Chimp中的元素的方法:

代码语言:javascript
复制
var myItem;
var elemArray = browser.elements('.castMemberPicture').value;
console.log(elemArray);

// the following will traverse the array and print out the elements 'alt' Attribute!
for (myItem in elemArray){ 
    console.log( browser.elementIdAttribute(myItem, 'alt').value);
};
票数 0
EN

Stack Overflow用户

发布于 2016-10-06 09:53:19

根据'elements‘的文档,您可以使用element命令单独访问每个元素:

可以使用‘response.value’检索元素数组,它是元素ID的集合,可以在后续命令中使用‘.ELEMENT’方法访问。

所以对于你的循环:

代码语言:javascript
复制
var myItem;
var elemArray = browser.elements('.castMemberPicture').value;

for (myItem in elemArray){ 
    console.log( browser.getAttribute(myItem, 'alt'));
};
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39859343

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档