我有这个代码在 phantomjs 中运行。我不知道为什么 form.elements 一直返回 null 给我。我在 chrome 开发者控制台上运行了相同的代码,得到了我想要的正确结果。
我对 javascript 和所有相关的东西都很陌生。请阐明一些观点。
var page = require('webpage').create();
page.open('http://www.kayak.com', function (status) {
if (status !== 'success') {
console.log('Unable to access network');
} else {
var form = page.evaluate(function(){
return document.getElementById('searchform');
});
console.log(form.elements[2].value);
}
phantom.exit();
});