如何使用CasperJS获取下拉框的值

时间:2015-12-01 13:20:41

标签: javascript css-selectors casperjs

我正在寻找几个关于从下拉框中检索值的线程,以便稍后在casperjs脚本中使用这些值。

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

这是我的下拉框在我的网页中的显示方式: enter image description here

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

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!

1 个答案:

答案 0 :(得分: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));