title: How to submit a form in Geb (WebDriver) that has no submit button
body: <p>I'm building up a test in Geb (WebDriver) that has the need to work with a form that has no submit button.  From the user's perspective, it is as simple to use as typing in the search term and hitting the enter key on their keyboard.</p>
  
  <p>Using Geb in a purely script form I can get around this by appending the special key code to the text being typed in, as seen in the following:</p>
  
  <pre><code>import org.openqa.selenium.Keys
  
  $('input[id=myInputField]') &lt;&lt; "michael"+Keys.ENTER
  </code></pre>
  
  <p>That works fine.  But if I want to use Geb's recommended Page Object pattern (http://www.gebish.org/manual/0.7.1/pages.html#the_page_object_pattern), I don't see what I should do.  What do I define in the content section of my EmployeeSearchPage object to duplicate the missing searchButton and its "to" object reference that tells Geb how to handle the resulting page?</p>
  
  <pre><code>class EmployeeSearchPage extends Page {
      static url = "http://localhost:8888/directory/"
      static at = { title == "Employee Directory" }
      static content = {
          searchField { $("input[id=myInputField]") }
          // THE FOLLOWING BUTTON DOESN'T EXIST IN MY CASE
          searchButton(to: EmployeeListPage) { $("input[value='SUBMIT']") }
      }
  }
  </code></pre>
  
  <p>I realize that I could add a submit button to the form that I could for the test and use CSS to position it out of the user's view, but why should I have to adapt the app to the test?  Things should work the other way around.</p>
  
  <p>I've been evaluating a lot of web testing frameworks and find that this type of form presents a problem for many of them - at least as far as their documentation is concerned.</p>
  
  <p>Any ideas?  Thanks!</p>