Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/solr/3.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
如何使用C#和Selenium通过InnerHTML搜索元素_C#_Javascript_Jquery_Html_Selenium - Fatal编程技术网

如何使用C#和Selenium通过InnerHTML搜索元素

如何使用C#和Selenium通过InnerHTML搜索元素,c#,javascript,jquery,html,selenium,C#,Javascript,Jquery,Html,Selenium,我想通过搜索匹配的innerHTML字符串来获取特定的元素id。例如,我想找到具有innerHTML“汽车开始”的元素id 我知道可以使用JavaScript循环查找所有innerHTML,但一旦找到与“searchName”字符串匹配的innerHTML,如何返回id?使用jQuery很简单,只需使用:contains- 这允许您返回相关元素的ID 或者,这里有一种只使用JavaScript的方法- function textID(node, text) { if (node.no

我想通过搜索匹配的innerHTML字符串来获取特定的元素id。例如,我想找到具有innerHTML“汽车开始”的元素id


我知道可以使用JavaScript循环查找所有innerHTML,但一旦找到与“searchName”字符串匹配的innerHTML,如何返回id?

使用jQuery很简单,只需使用:contains-

这允许您返回相关元素的ID

或者,这里有一种只使用JavaScript的方法-

function textID(node, text) {
    if (node.nodeValue == text) {
        return node.parentNode;
    }

    for (var i = 0; i < node.childNodes.length; i++) {
        var returnValue = textID(node.childNodes[i], text);
        if (returnValue != null) {
            return returnValue;
        }
    }

    return null;
}
函数textID(节点,文本){
if(node.nodeValue==文本){
返回node.parentNode;
}
对于(var i=0;i

为什么一个简单的
.Text
不起作用?我还没有考虑到这一点…Text会去哪里?
var found = $("td:contains('Start of Car')").attr('id');
function textID(node, text) {
    if (node.nodeValue == text) {
        return node.parentNode;
    }

    for (var i = 0; i < node.childNodes.length; i++) {
        var returnValue = textID(node.childNodes[i], text);
        if (returnValue != null) {
            return returnValue;
        }
    }

    return null;
}