0

I want to fill input #searchForm with CasperJS

I tried 3 methods and only one works (the sendKeys method !)

var casper = require("casper").create({
    clientScripts: ["vendor/jquery.min.js"],
    verbose: false,
    logLevel: 'debug',
});
casper.waitForSelector('#search_field', function() {
    console.log('#search_field FOUND !!!');
    //document.querySelector('#search_field').value = 'search1'; //does not work
    //casper.sendKeys('#search_field', 'search1'); // works !
    //$('#search_field').val('search1'); // does not work

});

My preference would be to use jQuery to fill forms. Why don't the 2 other methods work?

Artjom B.
  • 61,146
  • 24
  • 125
  • 222
yarek
  • 11,278
  • 30
  • 120
  • 219
  • Possible duplicate of [Why doesn't plain JavaScript work in CasperJS?](http://stackoverflow.com/questions/18328387/why-doesnt-plain-javascript-work-in-casperjs) – Artjom B. Oct 18 '16 at 19:40
  • 2
    Answer: because you need to put code that runs on the DOM into the page context (inside `casper.evaluate`). – Artjom B. Oct 18 '16 at 19:41

0 Answers0