【发布时间】:2015-04-14 08:02:12
【问题描述】:
测试场景是,
- 创建一个单元格,
- 从下拉菜单中更改语言(从 R 到 Python),
- 输入代码并执行。下拉菜单的 HTML 代码是
<select class="form-control cell-control-select cell-control">
<option>Markdown</option>
<option>R</option>
<option>Python</option>
<option>RMarkdown</option>
</select>
下面是我的 casperjs 代码
casper.then(function(){
this.mouse.click({ type: 'xpath' , path: "/html/body/div[3]/div/div[2]/div/div[3]/div[1]/div/select"});//x path for dropdown menu
this.echo('clicking on dropdown menu');
this.wait(3000);
});
casper.then(function(){
var z = this.evaluate(function() {
document.querySelector('.form-control').selectedIndex = 2;
return true;
});
this.wait(3000);
});
它正在从下拉菜单中选择 Python 语言,但是当我们运行代码时,它在提示单元格中显示错误。当我们在 python 语言单元中运行 R 代码时,我们会遇到同样的错误。
【问题讨论】:
-
您看到的错误是什么?更改所选索引后,是否在截屏时显示选择了“Python”?选择框是否可能隐藏,实际的下拉菜单是用 HTML+CSS+JS 实现的?
-
是的,它在下拉菜单中显示“Python”。我只使用简单的 python 代码,即 a=50;print a。当它执行时(在下拉菜单中选择了 Python),它显示“解析错误::1:12:意外符号 1:a=50;打印 a”错误。当我们在 R 中运行 python 代码时会发生此错误。
标签: javascript html-select casperjs