`WWW::Mechanize Won't Fill Form Out - perl

I am trying to fill out a form on a website using WWW::Mechanize but the form is embedded in a script, not the usual <form> tag
<script>
component_lang["ib4"] = {};
</script>
<script type="text/x-handlebars-template" id="ib4-tpl">
<form class="component component-form" id="input" enctype="multipart/form-data" method="post" action="/" >
<div class="input-group type-firstlast">
<div class="input-label">
<label>Your Name</label>
</div>
<div class="inputs columns">
<div class="column-2 column-first"><input type="text" name="first" placeholder="First Name" value=""></div>
<div class="column-2"><input type="text" name="last" placeholder="Last Name" value=""></div>
</div>
</div>
</form> </script>
<li id="ib4" class="form page-component-has-overflow"></li>
How would I use WWW::Mechanize to fill this form out? The mech-dump utility did not find any forms on the page.

WWW::Mechanize only works on the HTML, it has no Javascript support. For a Mechanize-like module with Javascript support, you have several options.
WWW::Mechanize::Firefox which lets you drive Firefox.
WWW::Scripter with WWW::Scripter::Plugin::JavaScript.
WWW::Selenium to interface to Selenium RC or Selenium::Remote::Driver to interface to Selenium Webdriver.

Related

MailChimp: I can't type into sign up form input field from Mailchimp. Why?

I am trying to use an embedded form from Mailchimp in my code, specifically the 'horizontal' style. I've had to edit the code a little in order to make it compatible with ES6, as I'm using GatsbyJS. The problem is that the form show up fine on my browser, but I can't type into the input field... why is this? and how could I fix this?
here is my code for the form:
<div className='row bottom-margin-small'>
<div className='newssub-wrapper col-sm-10 offset-sm-1'>
<link href="//cdn-images.mailchimp.com/embedcode/horizontal-slim-10_7.css" rel="stylesheet" type="text/css" />
<div id="mc_embed_signup">
<form action="https://fruitcakeblog.us17.list-manage.com/subscribe/post?u=d57c0ac89b6b66e99eb7cb07c&id=daea937c97" method="post" id="mc-embedded-subscribe-form" name="mc-embedded-subscribe-form" className="validate" target="_blank" novalidate>
<div id="mc_embed_signup_scroll" style={{background: '#fff', clear: 'left', fontSize: '14px', width: '100%'}}>
<label for="mce-EMAIL">Subscribe to our mailing list</label>
<input type="email" value="" name="EMAIL" className="email" id="mce-EMAIL" placeholder="email address" required />
<div style={{position: 'absolute', left: '-5000px'}} aria-hidden="true">
<input type="text" name="b_d57c0ac89b6b66e99eb7cb07c_daea937c97" tabindex="-1" value="" />
</div>
<div className="clear">
<input type="submit" value="Subscribe" name="subscribe" id="mc-embedded-subscribe" className="button" />
</div>
</div>
</form>
</div>
</div>
</div>
I'm having the same issue and it turns out the Gatsby team is working on implementing support. There is a small React library from Julien Bouquillon called React Mailchimp Subscribe that might allow you to implement a form by building it using JSX instead of HTML that you copy/paste from the Mailchimp Form Builder.

Bootstrap and Struts2 form with validation

I'm using struts2 in my project and I'm trying to add bootstrap responsive features.
I have a form with validation (via xml and class validation())
Now the form look like this:
<s:form action="Welcome" method="post" validate="true">
<div class="form-group row">
<div >
<small id="passwordHelp" class="text-danger">Must be 8-20 characters long.</small>
</div>
<label for="inputPassword" class="col-sm-2 col-form-label text-danger">Password</label>
<div >
<input type="password" class="form-control is-invalid" id="inputPassword" placeholder="Password">
</div>
</div>
</s:form>
the problem is that the error message is shown in any case (even at the first call of the jsp with the form (befor the submit itself)
What am I doing wrong?

Angular JS bindings seem to stop working inside of ng-include

I'm using angular js. When I have a snippet that I put in ng-include instead of outright writing the html to the same file, the former doesn't seem to pick up my bindings for my input fields.
In other words, if the following snippet:
<form name="pickupForm" ng-submit="completeCheckoutPickup()" novalidate>
<div class="row checkout-input">
<div class="col-sm-12">
<div class="title">
PICK UP DATE & TIME
</div>
<span class="glyphicon glyphicon-calendar date-icon-color"></span>
<input type="date" ng-model="userDate" required>
<span class="glyphicon glyphicon-time date-icon-color"></span>
<input type="time" ng-model="userTime" required>
</div>
</div>
</form>
is included as
<div ng-include src="'/templates/account/checkout/checkout.pickup.desktop.html'"></div>
The angularjs bindings for the ng-model stop working.
Any ideas?
enter code here

How to submit form data with Zurb Foundation

I'm a beginner trying to set up my first form with Zurb Foundation, and I'm not able to find in the documentation the info on how to actually pass the data. It's just a basic contact form with name/email/message that I'd like sent to my email once people click the Submit button... and I don't know how to do that.
I apologize for the simple question, your help is greatly appreciated.
Zurb foundation is front end frame work for website design and development , if you want to submit the form or do server communications, please read some basics,
HTML form and input : http://www.w3schools.com/html/html_forms.asp
Submitting HTML form using Jquery AJAX :
Submitting HTML form using Jquery AJAX
AJAX - Send a Request To a Server : http://www.w3schools.com/ajax/ajax_xmlhttprequest_send.asp
The HTML part:
<form action="form_contact_process.php" method="POST" name="contact" id="contact">
<fieldset>
<legend>Contact form</legend>
<div class="row collapse">
<label for="name">Name</label>
<input type="text" name="name" id="name">
</div>
<div class="row collapse">
<label for="email">Email</label>
<input type="text" name="email" id="email">
</div>
<div class="row collapse">
<label for="phone">Phone</label>
<input type="text" name="phone" id="phone">
</div>
<div class="row collapse">
<label for="message">Message</label>
<textarea name="message" id="message" rows="5"></textarea>
</div>
<div class="row collapse">
<input class="button small large-12" type="submit" value="Submit">
</div>
</fieldset>
</form>
Then over at form_contact_process.php:
<?php
$name = $_POST['name'];
...
echo $name;

Do not understand form action right

This is the first time I've try to use a formulae to make a contact page on my site.
This is the code I use (and tried to adapt for my purposes):
<div id="main" class="content container bottom clearfix">
<div class="cont row">
<!-- FORM-->
<div class="form sevencol" style="width:52%">
<form action="mailto:contact#stefanseifert.com" id="contactForm" method="post">
<ul class="contactform">
<li><input type="text" name="contactName" id="contactName" value="" class="required requiredField"/>
<label for="contactName">Name</label>
</li>
<li>
<input type="text" name="email" id="email" value="" class="required requiredField email"/>
<label for="email">E-Mail</label>
</li>
<li class="textarea">
<textarea name="comments" id="commentsText" rows="10" cols="10" class=" required requiredField"></textarea>
</li>
<li>
<script type="text/javascript" src="http://www.google.com/recaptcha/api/challenge?k=6Lf-ueMSAAAAAExUbwjvdqnNuNjlkeN3_wQyl720"></script>
<noscript>
<iframe src="http://www.google.com/recaptcha/api/noscript?k=6Lf-ueMSAAAAAExUbwjvdqnNuNjlkeN3_wQyl720" height="300" width="500" frameborder="0"></iframe><br/>
<textarea name="recaptcha_challenge_field" rows="3" cols="40"></textarea>
<input type="hidden" name="recaptcha_response_field" value="manual_challenge"/>
</noscript>
</li>
<li class="buttons"><br>
<input type="hidden" name="submitted" id="submitted" value="true"/>
<button type="submit" class="submit superlink">E-Mail senden</button>
</li>
</ul>
</form>
</div>
<!-- END FORM-->
</div>
The result of it, is that every time I test it my Email program opens and fills part of the code inside a new mail of mine.
What is wrong here?
What I wanted was that a mail with the content of the input fields is sent to me, instead!
Appreciate your help!
Thanks very much
Garavani
You can't send an email out of the browser.
<form action="mailto:contact#stefanseifert.com" ... specifies what should happen, once the form is submitted. This action opens the standard email client to send an email to that address - that's what you experienced.
if you want the email to be sent automatically by a server to you, you need to implement it in php, c#, java - or any other language on that server, and send the form data to the server