HTML editable elements
This guide covers how to enable WProofreader in standard HTML editable elements: <textarea>, <div contenteditable>, <iframe>, and <input>. It applies to both Cloud and self-hosted deployments.
For rich text editors like TinyMCE, CKEditor, or Froala, refer to the dedicated editor integration guides.
See HTML controls demo | See mixed controls demo
Prerequisites
You'll need an active WProofreader subscription or trial. Sign up for a free trial or choose a plan
For the Cloud version, you'll need a Service ID. You can find it on the Credentials page in the admin panel after signing up. For self-hosted, you'll need the endpoint of your WProofreader application (protocol, host, port, and path) to specify in the configuration parameters.
Supported elements
WProofreader works with the following HTML elements:
<textarea>
Supported by default with autoSearch.
<div contenteditable>
Supported by default with autoSearch.
<iframe>
The iframe document must have contenteditable set on the <body> or a child element.
<input>
Disabled by default with autoSearch. Requires enableAutoSearchIn: ['input'] or explicit init().
Using autoSearch
The simplest approach. Add the WProofreader config and script to your page. WProofreader will activate automatically when a user focuses on any supported editable element.
For setup instructions, refer to the Initialize using autoSearch guide.
Using init()
Use init() when you want proofreading to start immediately on a specific element without waiting for focus.
Textarea
Contenteditable div
Iframe
The iframe must contain an editable document. Point the container to the iframe element itself.
The editable-page.html file should have contenteditable on the <body>:
Input
<input> elements aren't covered by autoSearch by default. Use init() to enable proofreading on a specific input:
To enable autoSearch for all <input> elements on the page, add enableAutoSearchIn: ['input'] to your config.
Using data-wsc-autocreate
You can also mark elements with data-wsc-autocreate="true" to initialize WProofreader automatically on page load without requiring focus. Element-level attributes can override global config settings.
html
For details on this and other initialization methods, refer to the Initialization options guide.
Multiple elements on one page
You can initialize WProofreader on multiple elements. Define the config once and call init() for each element:
Alternatively, use autoSearch: true in the config and WProofreader will handle all editable elements automatically as they receive focus.
NPM SDK integration
The WProofreader SDK npm package is a universal integration method that works with any HTML element. It's a good fit for JavaScript framework projects (React, Angular, Vue).
For setup instructions, refer to the Initialize using npm SDK guide.
What's next
Configuration options to customize behavior, UI, languages, and dictionaries.
Configuration reference for the full list of parameters.
Features overview to explore all WProofreader capabilities.
Demos to see working examples.
Was this helpful?

