我在通过phantomjs单击提交按钮提交表单时遇到问题。为了进行测试,我使用了Google搜索。首先,我使用jquery更改了文本输入元素的值,然后尝试单击搜索按钮。问题在于它不会提交,我也不会成为任何搜索结果(请参阅screenshot)。
按钮:
<input value="Google-Suche" aria-label="Google-Suche" name="btnK"
type="submit" jsaction="sf.chk">
我的JavaScript代码:
var page = require('webpage').create();
page.open('http://www.google.com', function() {
page.includeJs("http://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js", function() {
var test = page.evaluate(function() {
var searchfor = 'sea';
$('input[name=q]').val( searchfor );
return $('input[name=q]').val();
});
page.evaluate(function() {
$('input[name=btnK]').trigger('click');
});
page.render('googleScreenShot' + '.png');
phantom.exit();
});
});