you are absolutely correct, IE > 10 doesn’t care for the placeholder attribute.
please feel free to modify the plugin to your liking, but do keep in mind anything modded will be overwritten in an update.
The reason for the syntax error is the way single and double quotes are handled in php,
everything on the right of the = is getting concatenated into the variable on the left, since the plugin uses single quotes, the statement: this.value==’Email Address’ causes php to think the end of those single quotes is over.
all you have to do is replace those single quotes with double ones.
$emma_form .= '<input id="emma-email" class="emma-form-input" type="text" name="emma_email" size="30" onfocus="if (this.value=="Email Address")
{this.value="";}" onblur="if (this.value=="") {this.value="Email Address";}">';
a slight caveat, if i may, and i only bring it up because we’ve done the same thing elsewhere.
by using JS to change the actual value of an input element, when the user clicks submit, that’s the value that will get processed in the form. No worries for “Email Address”, as the plugin uses the internal WP function is_email() to validate email addresses, but if you were to do similarly for “First Name” and “Last Name”, if the user leaves in those default values, they’ll get passed to Emma.
thanks for posting!
I tried what you posted above and it got rid of the syntax error but nothing shows up in the text field boxes now on both IE and Firefox.
You mentioned using JavaScript do I have to have a JS at the top of the class-form.php page? Or should this work by just replacing the default code with the code you provided above?
Thanks for the quick reply.
admittedly, i did not test the code i sent you, sadly we don’t have the time to invest in custom alterations of the plugin, but we can help out in small ways.
i mentioned using JS, as that is what this code is,
onblur="if (this.value=="") {this.value="Email Address";}"
it’s inline JavaScript. it simply says: “when this element receives focus, and if the value is empty, then make the value “Email Address”
i cannot say why that would not work in IE or FF, that question is beyond the scope of support we offer. however, yes, it is better to include JS within the <head> or down below the footer of the page.
there is an excellent online support forum for questions of this nature you may have heard of called stackoverflow
it is an invaluable resource and chances are, someone has already had the problem you’re having.
ty for posting.