javascript - 如何使用 Javascript 单击 anchor 标记(没有 ID 或类)

标签 javascript html css xpath bookmarklet

我正在创建一个 Javascript Bookmarklet 来填写网站上的表格以进行测试(我无法修改该网站)。

我似乎无法单击包含在列表项中的 anchor 标记。 所以网站结构是这样的:

<Div> 
  <ul class="exampleClass"> 
    <li class="col-xs-3 col-sm-2" value="8"><a>8th</a></li>
    <li class="col-xs-3 col-sm-2" value="9"><a>9th</a></li>
    <li class="col-xs-3 col-sm-2" value="10"><a>10th</a></li>
  </ul>
</Div>

正如您所注意到的, anchor 标记没有任何 id 或 class。

我的书签看起来像这样:

javascript: 

    var newVar = {
        formFill: function() {
            document.querySelectorAll("#ReasonValue")[0].value='2';
            document.find_element_by_xpath(".//a[contains(text(), '10th')]").click();
        }
    };
    newVar.formFill()

我只需要一种方法来单击/选择其中一个列表项

非常感谢任何帮助。

最佳答案

只使用 jQuery 会更容易,但我会假设无论出于何种原因您不能使用 jQuery,只能使用 JavaScript。

我会尝试这样的事情:

document.querySelector("ul.exampleClass li[value=10] a").click();

关于javascript - 如何使用 Javascript 单击 anchor 标记(没有 ID 或类),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42983601/

相关文章:

Javascript for 循环,计算两个数据数字之间所有数字的平方根,通过表单相加

php - 如何提高 PHP 相对于 HTML 的速度?

javascript - 随机数提取器得到奇怪的值

jquery - jQueryMobile 中按钮的自定义图像

css - 如何对齐两个高度相同但字体大小不同的行内 block ?

javascript - 将多行文本边框作为更多文本中的一个 block

javascript - 如果第一列显示相等的值,如何使用第二列进行排序

javascript - 如何防止 Math.random() javascript 中的重复数字

javascript - 如何增加博客片段中的字符长度而不是使用有限的长度 'data:post.snippet' ?

php - 使用 PHP 在 HTML 中查看 base64 编码的 blob