Существует выпадающее меню с <select>
и некоторыми <option>
-Таками в исходном коде.Изменение значения выбранной опции не изменяется. DOM
Если вручную изменить значение параметра, нажав кнопку - содержимое <div>
с идентификатором #xyz
будет изменен (по AJAX, JS ...)
Теперь я написал JS-скрипт и назвал его CasperJS, чтобы имитировать это. Скрипт работает нормально, и когда я получаю snapshot.png избранного параметр изменяется:
$('select#zzz').val('123').change();
или
document.querySelector('select#zzz').selectedIndex = 2;
Затем скрипт будет ждать несколько секунд (5000 мс).
Но содержимое div не будет «обновлено» или «изменено».
Кто-нибудь знает, почему?
Вот скрипт:
var casper = require('casper').create({
loadImages:false,
verbose: true,
userAgent: 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko)',
clientScripts: ["jquery.min.js"]
});
casper.start('http://www.somewebsite.tld', function() {
this.test.assertExists('select[id="zzz"]', 'select is found');
});
this.evaluate(function() {
document.querySelector('select#zzz').selectedIndex = 2;
//$('select#zzz').val('123').change();
});
casper.wait(5000, function() {
this.capture("screenshot.png");
fs.write('results.json', this.getPageContent(), 'w');
});
casper.run(function() {
this.echo('Dropdown selected').exit();
});