如何使用 CasperJS 获取下拉框的值
How to fetch values of a drop down box with CasperJS
我正在查看几个关于从下拉框中检索值以便稍后在 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!
您需要一个像这样的基本 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));
我正在查看几个关于从下拉框中检索值以便稍后在 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!
您需要一个像这样的基本 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));