JS tips – How to prevent copy-pasting in input fields

Imagine a scenario where you’re collecting specific data through an online form, and you want to ensure that users manually enter their responses instead of copy-pasting them. This is crucial for maintaining data integrity and security, especially in online exams, secure registration, or critical applications. With 123FormBuilder, you can prevent form respondents from copy-pasting their answers by using a custom script.

Let’s take email confirmation as an example. We want our respondents to confirm their email in a second field without copying the data from the first one.

This script will prevent users from copy-pasting details to our Email fields. You can use this script for any type of input field.

document.addEventListener('DOMContentLoaded', () => {
  setTimeout(() => {
    ['000000000', '111111111'].forEach(id => {
      const field = document.querySelector(`[data-role=control][data-id="${id}"] input[data-role=i123-input]`);
      if (!field) return;

      field.oncopy = () => false;
      field.oncut = () => false;
      field.onpaste = () => false;
    });
  }, 2000);
});

All you need to do is make sure to replace 000000000 and 111111111 with the IDs of your form fields. The field IDs can be retrieved from the Field details section on the right-side panel.

Field ID

Once you’ve finished creating your script, you must upload it to a trusted server and provide the URL containing the script file in Advanced → Form → Add a JS script to your form. Learn more on how to add JS to your form here.

Leave a Reply

Your email address will not be published. Required fields are marked *

Frequently Asked Questions

Here is a list of the most frequently asked questions. For more FAQs, please browse through the  FAQs page.

Is this service free?
Yes, we offer a free form builder service. Just sign up to the Basic plan and you are all set. This plan is forever free, but you are limited with a few features only, such as 5 forms per account, 100 submissions per month and you have to keep the backlink to 123FormBuilder on your forms. Check out our features matrix for more information.
How many forms can I create?
It depends on the service plan you are on. Higher service plans enable more features, including more web forms for your account. If you need more forms, go to the My Account section of your account and click the upgrade button. To create an unlimited number of forms, either upgrade to the Platinum service plan or higher. Consult our features matrix for more information.
How can I publish my forms?
You can publish your forms in many ways, by using their direct URL or HTML link, embedding them with a JavaScript code, Inline HTML or iFrame, using the Facebook app or the WordPress plugin, using popups, the Blogger code snippet and many more. Once you have created and customized your form, go to the Publish section to complete your work. Read more in our documentation.
How do I change my form design?
You can change the design of your form for more information. in the Themes section, which is located in your form settings. We offer a set of more than 30 predefined form themes for your forms, but you can also create your own from scratch. You can customize the submit button, the logo and more. To apply your own stylesheets, all forms come with a custom CSS editor.

Can't find what you're looking for?