Discussion on Quform - Responsive Ajax Contact Form


ThemeCatcher supports this item


This author's response time can be up to 1 business day.

1289 comments found.

This contact form is stunning. Great work on the documentation – heck even the documentation is better prepared than some of these other code packages :)

Just purchased it and only have one request. Can you direct me (quickly) to where the jquery click event code is located for the input labels that appear on the side? I have (will soon have) this contact form setup on a dropdown box from a menu item, but when I hover out the menu collapses but the side label remains unless I click anywhere. Looking to change the function to a mouseover/mouseout vs. click.

Thanks in advance.

Thanks for the great feedback.

As for your request, in scripts.js, you will need to comment out or delete lines 63 – 73 as shown below:

  show: {
    when: {
      event: 'focus'
    hide: {
      when: {
      event: 'blur'

Be careful not to comment out the closing bracket on line 63 though or it will break the JavaScript. Any more questions please let us know!

I am looking to purchase the script but I was wondering is there anyway to direct it to a thank you page once submitted?

Yes that is possible. For the JavaScript enabled visitors you will need to change scripts.js lines 12 – 18 to:

if (response.type == 'success') {
    window.location = '';

For the non-JavaScript visitors you will need to change classes/Form.php and add the redirect below on line 66:


Hope this helps.

Hey, I got the script running. This is actually one of the better packages one finds here – I actually learned a few things as well :)

Just noticed a few things:

- I placed maxlengths on all input fields but for whatever reason, I cannot do so for the option value which converts to an input field when selected. I tried placing maxlength in the html replacement in the script.js file but no go. Maybe you can provide some help.

- I went with a two column layout, and similar to your example your error message is cutoff at the recpatcha whereas mine is chopped off at name/email. Perhaps you can help as well.

I managed to get the maxlength to work by changing line 82 of scripts.js to read:

newHtml = $('<input name="subject" maxlength="5" id="subject" value="" type="text" />');

try Ctrl-F5 to make sure it’s not using a cached version of the JavaScript.

What browser and operating system are you are using because I do not see the error message getting chopped?

Thanks for the option max value update…worked liked a charm. Also, I Ctrl+F5 and my IE page updated the errors perfectly (good call)

FYI (for prospective buyers only), your page (two column layout) has the captcha error box below it cutoff (does not expand all the way). I was using windows xp and IE version 8.

Thanks again for all your help. This script is a work of art and the service is top-notch. I gave it 5 stars!

Just to let you know we have fixed this in the latest version we’ve just uploaded. To fix yours find this line in scripts.js:
and change it to:
Bascially the change appends the errors to the wrapper of the input instead of the input itself.

What happens the users data once the form is submitted – is it emailed, saved in database (mysql, csv etc?).

It is emailed to the recipients you specify during configuration. You can of course customise it to save to a MySQL db although code to do that is not included.

Good job man! It seems like a great script!

Good luck with the sells.

Before I purchase, I would like to know if the form supports Hebrew: RTL + The ability to read it correctly in outlook.


The form will work great if your website uses UTF -8 encoding which I think some Hebrew language websites use.

hi there I sent you an email but never heard a response.

I’m trying to remove the box and pencil icon from the form but for some reason when I delete it from the CSS it just remains as is?

Also I was wondering if there was a way to add a calendar to the script? I’d like for the person to choose a day as an appointment and then have it submitted.

Also for some reason the text on the tooltips is showing as times new roman and not as the default page.. small annoyance.

Check your email for a more specifics.

Hi kjrichmond

I didn’t get your email, can you please send it again to and I’ll help you.

Stellar script!!! It works excellently and your documentation is fantastic! Keep up the good work!

HI, I really hope this is not a stupid question, but can this script be inserted into an HTML website page?

I design sites using both but am having a heck of a time trying to find a contact form that works and can be dropped easily onto an HTML page.

NEVER MIND , ANSWERED MY OWN QUESTION , I didn’t see it say this on the informational/buy page but when I clicked on the preview it says a the top for any PHP or HTML page. So FYI if anyone else wonders the same.

WOO -HOO! Thank you so much!

This is the most amazing contact form that I have found yet! Believe me, I have tried many!!! And the instructions are so well organized! And the design time to set it up did not take long at all! I Highly recommend this form!!! Great job!

Now if I can figure how to rate this and give it 5 stars, I’m new to codecanyon and I must find the 5 stars for your form!

Hi, allanruddiman! I purchased the script and think about changing the captcha-pic because I´d like to use german words for my visitors. Your description says: “The part of the filename before .png must match the word or characters that the user is expected to type in and this is case sensitive. For example if your image had the word keys it should be called keys.png”. I just wondered: Is this still save when the keyword matches the name of the image, regarding the bots? (Sorry, I´m not that much into php) Regards from Austria and have a happy new year and good sales! ;-)

Bots will not be able to read the filename, because the image is loaded through the “captcha.php” file and the actual name of the image file is never sent to the browser so it is still secure.

Happy new year!

Many thanks for the kind explanation. I also “discovered” the new version today – great service and great work, I´m glad I made the decision to buy this script!

Hi again, I have a question if I try to use the form TWICE on the same site. I want to use it for a contact form and then as a quote form on another page. To make things easier, I created a second contact-form folder and renamed it quote-form. I’ve went through and renamed everything in the files that indicate the path to go to the quote-form file. It works except for the thank you message. The thank you message is going staying on the same page. It is going to white page with the thank you message and the style selector.

The path shows….

Any idea what I’m doing wrong? Or is there an easier way to make a different form in the same site? The quote needed a description text area and a color choice text area. I also wanted a file upload field but could not figure out how to code that if you know, I would be ever so grateful! I tried “file” as the element but it didn’t work.

Thanks in advance! p.s. I’d be glad to buy the contact form again if that is what I need to do. :-)

Thanks Allan, you rock! I read how to make another form on the site and wanted to smack myself in the forehead! Thank you so much! Can’t wait to download the new one though. You have such a great product here! Your instructions and your response time are amazing. I’ll figure out how to rate you.

Hi again, I’m having just one small problem with the duplicate form on the site for my quote form. I haven’t changed anything yet as far as the fields for the quote form. I made the quote.php in the contact-form folder. I changed the call to action on my quote.html page. It works fine except that the success message is not showing up. The CSS formatting is showing up so it does fade out to the success page but no text. Do you know what could cause that?

Hard to say without seeing it in action, but here are a couple of suggestions.

The success message should be shown in a div with the id contact-form-message so check that exists in your quote form HTML .

Also, check line 9 of contact.php where you set $successMessage that it’s not empty.

If neither of these suggestions work you can email me a link to the form at and I can take a look.

We uploaded a new version of the form yesterday with some major improvements. We recommend everyone who bought the form to download the new version and use that instead of the old version.

To upgrade, drop the new contact-form folder in place of your old one. You will need to make any changes to files inside the contact-form again (sorry about that) but the only thing you need to change about the HTML of your form is the action attribute of the element, which should be changed as shown:


See the item description for the list of changes.

Have a happy new year!

I sent a new email to the one you provided. Thank you.


Yes, this certainly looks like a nice script and the key to it all is the great documentation, thanks. The documentation alone is worth more than $5.

After looking at the docs and code, one thing that seems to be missing (for me, anyway) is the ability to have different/multiple recipients based on a selection.

I am by no means a php programmer… but for a single-selection dropdown, such as the ‘subject’ field presented in the default form, I am thinking something like:

switch($_REQUEST['subject']) {
  case "General enquiry":
  $recipients = array(
  );  break;
  case "Sales enquiry":
  $recipients = array(
  );  break;
  case "Support enquiry":
  $recipients = array(
  );  break;
  $recipients = array(
  );  break;
} place of lines 20-22 in process.php…???

Won’t be able to play with this for a few days, but I’m sure it will need some mods/tweaking so I thought I would put it up here first and see if anyone has any thoughts, or alternate ideas/methods…


The code looks like it will work just fine for what you are trying to do. If you don’t mind I will add this code to the documentation for future versions, thanks for sharing.

Great, thanks for checking. Of course use the code, it’ll make me feel useful for a change. Hahahaha.

I might just be being stupid but I can’t get the form to submit once uploaded to my ftp. All the files and folders are there in the correct place, the form looks good on the page but nothing happens when clicking submit, the form just stays there. Had a look with firebug but haven’t used it before so I might be missing something obvious. Any help would be much appreciated.

The webpage is

Looks OK to me I take it you got it working?

No still isn’t working, can’t figure it out! I even uploaded all the download files (unedited except for the email in process.php) to another ftp site and it doesn’t work there either. hmmm

Im currently switching to a different server option with my web hosting provider, see if that helps. so the link above may be offline for a few hours


Can you add recaptcha?

You could if you wanted to, but the form already comes with a nicer looking captcha field (Type the word) and the ability to create your own captcha images to suit the design of your website.

Hi! Nice form you got there :) Is there any documentation about adding a header for each email that is sent? If not let me know so I can add some code.

Hey, thanks! There is nothing in the documentation just now about how to do that, let me know if you want help modifying it.

Hiya back again.

If a user has javascript off the process page is called (great call btw as most programmers don’t factor this in), however where can I enter the echo back values when the user returns to the form?

The fields values are wiped out when returning to the form and I would like to echo back the values as this may annoy users (having to fill out all form values again) especially if I choose to expand the form for other projects.

I would like to avoid having to add the input/textarea boxes to the non-javascript page :)


In our tests with JavaScript disabled if you went back to the form the values were still there, this was the case in IE, Firefox and Chrome. Although it might not happen with some OS / browser combinations. The number of users that this would actually affect is pretty low.

You will need to have another copy of the form in another file that you include when the form has errors and echo the values for each element into the form. I wouldn’t recommend doing it simply because it’s not worth the hassle for such a few number of users and this is just one of the things that non-JS users have to deal with. Send me an email if you want more detailed instructions on how to do it.