【问题标题】:How to fetch values of a drop down box with CasperJS如何使用 CasperJS 获取下拉框的值
【发布时间】:2016-03-05 10:30:23
【问题描述】:

我在几个线程中查看了有关从下拉框中检索值以便稍后在 casperjs 脚本中使用这些值。

所以我的问题是我无法从下拉框中获取值并在下一步中实际使用它,现在只是将其回显。

这是我的下拉框在我的网页中的外观:

我确实尝试了一些示例,但它不起作用,我做错了什么?

casper.then(function() {
    var options = this.evaluate(function() {
        var options = document.getElementById('selectedNetworkElementOrGroup_TD').children;
        return [].map.call(options, function(opt) {
            return { val: opt.value, text: opt.textContent };
        });
    });
    this.echo(JSON.stringify(options));
});

一个问题可能是下拉框没有id!

【问题讨论】:

    标签: javascript css-selectors casperjs


    【解决方案1】:

    您需要一个像这样的基本 CSS 选择器:#selectedNetworkElementOrGroup_TR select:

    var options = this.evaluate(function() {
        var options = document.querySelector('#selectedNetworkElementOrGroup_TR select').children;
        return [].map.call(options, function(opt) {
            return { val: opt.value, text: opt.textContent };
        });
    });
    this.echo(JSON.stringify(options));
    

    【讨论】:

    • 您好,感谢您的回复,但是 echo 给了我 null 作为输出?任何线索为什么?
    • 是的,对不起。当我复制您的代码时,我忘记将标准的 getElementById() 调用更改为 querySelector()
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-28
    • 2015-12-10
    • 1970-01-01
    • 2018-04-19
    相关资源
    最近更新 更多